数据类型
数字
整型 int
长整型 long
浮点型 float
复数 complex
字符str
它只是人类可读的一种抽象表示形式
1 | name="helloworld" |
布尔型bool
bool,从Python2.3开始Python中添加了布尔类型。布尔类型有两种True和False。对于没有nozero方法的对象默认是True。
bool运算:
以下情况都为False
[] 空列表
{} 空字典 空集合
() 空元祖
‘’ 空字符串
0 数字0
list 列表
list []
name=[“萨德”,”委屈”,”多行”,”太容易”,”电风扇”]
name[0] 取第一个的值
name.index(“多行”) 查询多行的位置 得到结果 2
name.count(“太容易”) 查询太容易在列表中数量
name.append(“付出”) 追加
name.insert(4,”陈涛”) 把陈涛插到4的位置
name.pop(4) 删除第四个 ()内不写则默认删除最后一个
name.remove(“陈涛”) 删除成涛
del name[0] 删除第一个
name[name.index(“陈涛”)]=”水” 修改陈涛为水
dict 字典
字典(dictionary)是除列表之外python中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典由键和对应的值组成。字典也被称作关联数组或哈希表。基本语法如下:
1 | dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}; |
也可如此创建字典:
1 | dict1 = { 'abc': 456 }; |
可以字典中加字典,嵌套
key必须是唯一的
实例:
name = {1 : [’fuck‘],
2 : [‘fuck’],
3: {’name‘:’d‘},
34 : [‘wzc’,’hsy’]
}
增
name[”nice“]=”whatever“ 在name中新插入key为nice,value为whatever的键/值对,如果键/值对已经存在,则将给’nice’赋予新的值’whatever’
删
name.pop(34) 删除key为34的键/值对
del name[34] 删除key为34的键/值对
改
name[34][0]=’’love’’ 将key为34内的第一个值改为love
name[24]=name.pop(34) 将key名为34的改成24,值不变
查
name.get(34) 查找key为34的值,没有则返回None
name[34] 查找key为34的值,没有则报错
113 in name 判断字典中是否有key为113的键/值对
name.keys() 查找字典中所有的key
name.values() 查找字典中所有的值
循环
for i in name:
print( i ,name[i] )
更新
name.update(name1) 将name1的键值对合并到name中,如果两者之间有相同名字的key,则取name1中的值
set 集合
集合与字典的区别是没有key值
特点:天然去重,无序
1 | linux = {"alex", "jack", "rain", "lizhi", "sb", "lizhi"} |
tuple 元祖
元组类型在很多操作上都跟列表一样,许多用在列表上的例子在元组上照样能跑,我们有一节内容专门讲解元组类型。它们的主要不同在于元组是不可变的,或者说是只读的,所以那些用于更新列表的操作,比如用切片操作来更新一部分元素的操作,就不能用于元组类型
1 | CPython>>> a = ('a','123',['a',123]) |
列表与字典的一个method
name=[21,23,454,[34,123]]
h=name.copy()
当改变h[0],h[1],h[2]这些值时,name中的不变
但改变h[3]时
h[3][0]=56
name中也会变
同理
n1={12:”asda”,24:”asdasd”,33:[78,34]}
n2=n1.copy()
更改n1[12]的值,n2不变
更改 n1[33][0]的值,n2中也会变
转换类型
int(x [,base ]) 将x转换为一个整数
long(x [,base ]) 将x转换为一个长整数
float(x ) 将x转换到一个浮点数
complex(real [,imag ]) 创建一个复数
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个字符
unichr(x ) 将一个整数转换为Unicode字符
ord(x ) 将一个字符转换为它的整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
编码
utf -8 英文1个字节 中文3个字节
gbk 中文2个字节