Python数据类型

数据类型

  • number(int,float,bool,complex)
  • string
  • tuple 元组
  • list 列表
  • set 集合
  • dict 字典

number

a = 1 #int
a= 1.2 #float

bool

a = True #True=1,False=0
print(int(a),type(a))

x=43
ch='A' #A=64,b=98
y=1
print(x>y and ch<'b' and y)
#结果:1

实数和虚数

a = complex(5.6,8)
a = 1.2 + 3.4j
print(a,type(a))
print(a.real) #获取实数部分
print(a.imag) #获取虚数部分

1.把一个值赋值给多个变量

a=b=c=1
print(a,b,c)
#2.把多个值赋值给多个变量
a,b,c=1.2,3,True
print(a,b,c)

string

str(用单引号或者双引号括起来的字符)

s="helloworld"
print(s,type(s))

字符串的取值和切片,取前不取后

print(s[0],s[1],s[-1],s[-2],s[2:4],s[2:],s[:6],s[3:-3])
#结果:h e d l ll lloworld hellow lowo

字符串相关方法

s="Hello,World"
print(s.upper()) #大写
print(s.lower()) #小写
print(s.capitalize()) #首字母大写
print(s.split(",")) #通过字符切割字符串
print(s.replace("W","S")) #替换字符串
print(s.count("o")) #计算一个字符出现的次数

内置函数方法

print(s,type(s),max(s),min(s),len(s),chr(97),ord('a'))

字符串的运算

ss="www"
sss=123
print(s+ss) #拼接(只能相同数据类型拼接)
print(ss+sss) #报错。数据类型不同
print(s*2) #出现N次

字符串的格式化

print("hello world%s"%"www") #%s是字符串占位符
print("hello world%10s"%"www") #占10个字符的位置,多出来用空格填充
print("hello world%d"%123) #%d是数字占位符

import time

print("hello world%s"%time.time())

tuple元组

1、特点:是不能被更改,使用()定义

tup = (82,42,60,32,6,19,42)
tup1 = (100,200)

2、打印、取值、切片

打印和取值:

print(tup,type(tup),max(tup),min(tup),len(tup))

切片:

print(tup[0],tup[1],tup[-1],tup[-2],tup[2:4],tup[2:],tup[:4],tup[2,-2])

3、与元组相关的方法

判断一个元素在元组中出现的次数

tup.count(42)

判断一个元素在元组中第一次出现的下标

tup.index(42)

4、元组的运算

print(tup+tup1)
print(tup*2)

list列表

1、特点:有序的,使用[]定义

lis=[82,42,60,32,6]
lis2=[100,200,32]

2、打印、取值、切片(和str一样)

打印和取值:

print(lis,type(lis),max(lis),min(lis),len(lis))

切片:

print(lis[0],lis[1],lis[-1],lis[-2],lis[2:4],lis[2:],lis[:4],lis[2:-3])

3、与list相关的方法

在list尾部追加一个元素

lis.append(100);print(lis)
#在下标为3的位置插入一个元素
lis.insert(3,200);print(lis)

根据下标删除

lis.pop(2);print(lis)
#根据值删除
lis.remove(60);print(lis)

从小到大排列

lis.sort();print(lis)
#反转
lis.reverse;print(lis)

获得一个元素出现的次数

print(lis.count(42))
#获得一个元素第1次出现的下标
print(lis.index(42))

清空

lis.clear();print(lis)
#复制
ls=lis.copy;print(ls)
#继承
lis.extend(lis2);print(lis)
#结果:[82, 42, 60, 32, 6, 100, 200, 32]

4、运算

print(lis+lis2)
print(lis2*2)

set集合

1、特点:无序的,不可重复,使用{}定义

se = {82,42,60,32,6,19,42}
se1 = {100,200}
s = set() #创建空的集合
#不能用s={},使用s={}是创建空的字典

2、打印、取值、切片

打印:

print(se,type(se))

取值和切片:NO

3、与set相关的方法

根据值增加

se.add(100);print(se)
#根据值删除
se.remove(63);print(se)

复制

new_se=se.copy();print(new_se)
#清空
se.clear();print(se)
#修改(继承)
se.update(sel);print(se)

4、运算

  • se&se1 交集
  • se|se1 并集
  • se-se1 减集
  • se^se1 异或

dict字典

1、特点和定义
特点:保存的是键值对。键不能重复,值可以重复。使用{}定义。

定义:

dic = {"a":"路飞","b":"艾斯","c":"萨博"}

注意:列表list不能作为键

2、打印和切片

打印:

print(dic,type(dic),max(dic),min(dic),len(dic))

切片:NO

但是可以通过键来增、删、改、查(取值)

dic["a"]="乔巴"
del dic[10];
dic[5]="卡普"
print(dic[30])

kvps={'1':1,'2':2}
thecopy=kvps
kvps['1']=5
sum=kvps['1']+thecopy['1']
print(sum)
#结果:10
#分析:kvps和thecopy两个变量指向内存中栈的地址

3、与dict相关的方法。

dic={10:"鸣人",5:"佐助","a":"w"}
dic2={"a":"b"}

获得所有的key

ls=dic.keys();print(ls)
#获得所有的value
ls=dic.values;print(ls)
#通过key获取值
ls=dic.get(10);print(ls)

清空

dic.clear();print(dic)
#复制
ls=dic.copy();print(ls)
#修改或继承
dic.update(dic2);print(dic)

通过键删除

ls=[1,2,3]
#把所有的键统一成一个值
w=dic.fromkeys(ls,"www");print(w)

内置函数

type():查看数据类型
print();max();min();len();chr();ord();
int();float();str();tuple();list();set();dict();

数据类型转换

1.自动转换

print(1+True);

2.强制转换

d=(12,4412,51,251,251)
d=list(tuple(set(d)))
print(d)

Python中的输入和输出

1、输入:input("说明")

任意的输入5个数字,按从大到小排序

inp1=input("请输入第一个数字:")
inp2=input("请输入第二个数字:")
inp3=input("请输入第三个数字:")
inp4=input("请输入第四个数字:")
inp5=input("请输入第五个数字:")
lis=[inp1,inp2,inp3,inp4,inp5]
lis.sort()
lis.reverse()
print(lis)

2、输出:print("内容")

print("hello world%s"%"www")
print("hello world{}".format([1,2,3]))
print("hello{1} world{0}".format("www","sss"))
print("hello{name} world{age}".format(name="zhangsan",age=18))

lis=["apple","balana","orange"]
w="_".join(lis)
print(w)

posted @ 2019-11-15 02:00  心脏鼓点  阅读(829)  评论(0)    收藏  举报