Python学习笔记(十二)公共操作
所谓公共操作指的是所有数据序列都支持的操作。
一、运算符
+ 合并
str1 = 'aa'
str2 = 'bb'
list1 = [10,20]
list2 = [30,40]
t1 = (10,20)
t2 = (30,40)
dict1 = {'name':"Tom"}
dict2 = {'age':18}
# +
print(str1 + str2) #aabb
print(list1 + list2) #[10,20,30,40]
print(t1 + t2) #(10,20,30,40)
print(dict1 + dict2) #dict不支持
* 复制
str1 = 'a'
list1 = [10]
t1 = ('world',)
print(str1 * 5)
print(list1 * 5)
print(t1 * 5)
in/not in:判断元素是否存在
str1 = "abcd"
list1 = [10,20,30,40]
t1 = (1,2,4,5)
dict1 = {'name':'Tom',"age":18}
print('c' in str1) #True
print(50 not in list1) #True
print(3 in t1) #False
print('name'in dict1) #True
print('name'in dict1.keys()) #True
print('Tom'in dict1.values()) #True
二、函数
max()/ min()
str1 = 'abcdefg'
tuple1 = (10,34,29)
print(max(str1)) #a
print(min(str1))
print(max(tuple1))
print(min(tuple1))
range()
注意:1.range()生成的序列不包括end。
2.如果不写开始,默认从0开始。
3.如果不写步长,默认步长为1.
# range(start,end,step)
# 1 2 3 4 5 6 7 8 9
for i in range(1,10,1):
print(i)
# 1 3 5 7 9
for i in range(1,10,2):
print(i)
# 0 1 2 3 4 5 6 7 8 9
for i in range(10):
print(i)
enumerate()
语法:
enumerate(可遍历对象,start=0)
注意:start参数用来设置遍历数据的下标的起始值,默认为0.
list1 = ['a','b','c','d','e']
# enumerate 返回结果是元组,元组第一个数据是原迭代对象的数据的下标,元组第二个数据是原迭代对象的数据
for i in enumerate(list1):
print(i)
print()
for i in enumerate(list1,start= 1):
print(i)
# enumerate()
list1 = ['Spring','Summer','Autumn','Winter']
for i in enumerate(list1,start=1):
print(i)
for index,item in enumerate(list1,start=1):
print(index,item)
补充:
如果要统计文件的行数,可以这样写:
count = 0
count = len(open(filepath, 'r').readlines())
print('文件行数为:',count)
这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。
可以利用enumerate():
count = 0
for index, line in enumerate(open(filepath,'r')):
count += 1
print('文件行数为:',count)
三、数据类型转换
3.1 tuple()
作用:将某个序列转换成元组。
3.2 list()
作用:将某个序列转换成例子。
3.1 set()
作用:将某个序列转换成集合。
例子:
list1 = [10,20,30,30,40]
s1={100,200,300,400}
t1={'a','b','c','d'}
# tuple():转换成元组
print(tuple(list1))
print(tuple(s1))
# list():转换成列表
print(list(t1))
print(list(s1))
# set():转换成集合
print(set(list1))
print(set(t1))