字符串:str
a.split(':')=>在冒号处切字符串返回一个列表
通过append向列表中添加元素
a = input('请输入要添加的学生姓名:')
A.append(a)
a = [1, 2,3] ,b = [4,5,6]
a.extend(b),print(a) => [1,2,3,4,5,6]
a.append(b) ,print(a)=> a = [1,2,3,[4,5,6]]
print(a.index(2)) =>1#查看元素的下标
print(a.count(2)) =>1#计算出现的次数
a.insert(0,8),print(a)=>[8, 1, 2,3]#前面插入
del a[0] ,print(a)=>[2, 3]
a.pop(2),print(a)=>[1, 2]#默认删除最后一个
a.remove(3),print(a)=>[1, 2]根据元素值删除
a.sort (reverse=True) ,print(a)=>[1, 2,3]
列表嵌套:一个列表中的元素又是一个列表
元组:tuple (不能修改)
c = (1, 3, 5, 4),print(c.index(5))=>2
c = (1, 3, 3, 4),print(c.count(3))=>2
字典:directory无序的,通过key找到value修改
d = {'name':'lucy','age':18,}
d['name'] ='China'
=>{'age': 18, 'name': 'China'}
d['country'] ='China'
=>{'country': 'China', 'name': 'lucy', 'age': 18}
del d['name'] ,print(d) =>{'age': 18}
d.clear(),print(d)=>{}
print(len(d) ) =>2
print(d.keys()) =>dict_keys(['age', 'name'])
print(d.values())=>dict_values(['lucy', 18])
print(d.items())
=>dict_items([('age', 18), ('name', 'lucy')])
python2中有has_key(),cmp() python3中没有。
if 'name' in d: print(d['name'])=>lucy
键值对存取数据:值可以取任何数据类型,但是键只能使用字符串,数值或元组
len(item)计算容器中元素个数
max(item)返回容器中元素最大值
min(item)返回容器中元素最小值
多维列表/元组访问
tuple1 = [(2,3),(4,5)]
tuple1[0]=>(2, 3)
tuple1[0][0]=>2
tuple1[0][1]=>3
去重。
a = [1,2,3,4,53,4,56,72,2]
b = set(a)
a = list(b)
注意:cmp在比较字典数据时,先比较键,再比较值。
交集a&b,并集a|b,差集a-b,对称差集a^b
数字类型:int ,bool,float,complex,long(2.x)
字符串:str
元组:tuple
字典的key为这三种类型,只能使用不可变类型的数据。
可变类型:内存中的数据可以被修改:
列表list:
字典dict:
通过方法对可变类型的数据进行改变,不会改变可变类型的地址。
unhashable:
哈希是一种算法,其作用就是提起数据的特征码。hash(a):可以返回一串独一无二的数字。参数只能是不可变类型的。
在python中,设置字典的键值对时,会首先对key进行hash,已决定如何在内存中保存字典的数据,以方便后续对字典的操作增删改查
列表可以存放各种数据类型(数字型和非数字型)
len函数可以统计字符串、列表、元组、字典的长度
函数:len、type、print、input
for a in range(5): # 包头不包尾,默认是从0开始
range(1, 10, 3),表示从1开始,到10结束,步长为3
列表的copy函数,可以复制一个列表
乘号不能用于字典和数字之间
字典不支持相互比较
列表和元组通过加法运算得到的是一个新的列表和元组,并不是在原来的列表上做增加操作
a.split(':')=>在冒号处切字符串返回一个列表
a = 'abcdef'
a[:3] =>'abc'
a[::2] =>'ace'
a[5:1:2] =>' '
a[:1:2:5] =>'bd'
a[::-2] =>'fdb'
a[5:1:-2] =>'fd'
find()方法:
mystr.find(str, start=0, end=len(mystr))
检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1
index()方法:
跟find()方法一样,只不过如果str不在 mystr中会报一个异常.
count()方法:
返回 str在start和end之间 在 mystr里面出现的次数
replace()方法:
把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.
mystr.replace(str1, str2, mystr.count(str1))
split()方法:
以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串,maxsplit值为几就表示最多砍几刀。
name = 'hello world hha hhhhha ha'
a = name.split(' ',1)
print(a)
列表:list
通过append向列表中添加元素
a = input('请输入要添加的学生姓名:')
A.append(a)
a = [1, 2,3] ,b = [4,5,6]
a.extend(b),print(a) => [1,2,3,4,5,6]
a.append(b) ,print(a)=> a = [1,2,3,[4,5,6]]
print(a.index(2)) =>1#查看元素的下标
print(a.count(2)) =>1#计算出现的次数
a.insert(0,8),print(a)=>[8, 1, 2,3]#前面插入
del a[0] ,print(a)=>[2, 3]
a.pop(2),print(a)=>[1, 2]#默认删除最后一个
a.remove(3),print(a)=>[1, 2]根据元素值删除
a.sort (reverse=True) ,print(a)=>[1, 2,3]
列表嵌套:一个列表中的元素又是一个列表
元组:tuple (不能修改)
c = (1, 3, 5, 4),print(c.index(5))=>2
c = (1, 3, 3, 4),print(c.count(3))=>2
字典:directory无序的,通过key找到value修改
d = {'name':'lucy','age':18,}
d['name'] ='China'
=>{'age': 18, 'name': 'China'}
d['country'] ='China'
=>{'country': 'China', 'name': 'lucy', 'age': 18}
del d['name'] ,print(d) =>{'age': 18}
d.clear(),print(d)=>{}
print(len(d) ) =>2
print(d.keys()) =>dict_keys(['age', 'name'])
print(d.values())=>dict_values(['lucy', 18])
print(d.items())
=>dict_items([('age', 18), ('name', 'lucy')])
python2中有has_key(),cmp() python3中没有。
if 'name' in d: print(d['name'])=>lucy
键值对存取数据:值可以取任何数据类型,但是键只能使用字符串,数值或元组
len(item)计算容器中元素个数
max(item)返回容器中元素最大值
min(item)返回容器中元素最小值
多维列表/元组访问
tuple1 = [(2,3),(4,5)]
tuple1[0]=>(2, 3)
tuple1[0][0]=>2
tuple1[0][1]=>3
去重。
a = [1,2,3,4,53,4,56,72,2]
b = set(a)
a = list(b)
运算符 | Python 表达式 | 结果 | 描述 | 支持的数据类型 |
---|---|---|---|---|
+ | [1, 2] + [3, 4] | [1, 2, 3, 4] | 合并 | 字符串、列表、元组 |
* | 'Hi!' * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 复制 | 字符串、列表、元组 |
in | 3 in (1, 2, 3) | True | 元素是否存在 | 字符串、列表、元组、字典 |
not in | 4 not in (1, 2, 3) | True | 元素是否不存在 | 字符串、列表、元组、字典 |
序号 | 方法 | 描述 |
---|---|---|
1 | cmp(item1, item2) | 比较两个值 |
2 | len(item) | 计算容器中元素个数 |
3 | max(item) | 返回容器中元素最大值 |
4 | min(item) | 返回容器中元素最小值 |
5 | del(item) | 删除变量 |
集合set{'a','b','c'}:
与之前的列表,元组类似,可以存储多个数据,但是这些数据是不重复的。还支持联合union、交intersection、差difference、对称差集systemmetric_difference等数学运算。
去重:b = set(a) a = list(b)交集a&b,并集a|b,差集a-b,对称差集a^b
a = {1,2,3}
b = {3, 4, 5}
a.add(4)
print(a)
print(a & b)
print(a | b)
print(a - b)
print(a ^ b)
{1, 2, 3, 4}
{3, 4}
{1, 2, 3, 4, 5}
{1, 2}
{1, 2, 5}
不可变数据类型,内存中的数据不允许被修改:
数字类型:int ,bool,float,complex,long(2.x)
字符串:str
元组:tuple
字典的key为这三种类型,只能使用不可变类型的数据。
可变类型:内存中的数据可以被修改:
列表list:
字典dict:
通过方法对可变类型的数据进行改变,不会改变可变类型的地址。
unhashable:
哈希是一种算法,其作用就是提起数据的特征码。hash(a):可以返回一串独一无二的数字。参数只能是不可变类型的。
在python中,设置字典的键值对时,会首先对key进行hash,已决定如何在内存中保存字典的数据,以方便后续对字典的操作增删改查
+ 和 extend 和append的区别
列表可以存放各种数据类型(数字型和非数字型)
len函数可以统计字符串、列表、元组、字典的长度
函数:len、type、print、input
for a in range(5): # 包头不包尾,默认是从0开始
range(1, 10, 3),表示从1开始,到10结束,步长为3
列表的copy函数,可以复制一个列表
乘号不能用于字典和数字之间
字典不支持相互比较
列表和元组通过加法运算得到的是一个新的列表和元组,并不是在原来的列表上做增加操作