python-数据类型-元祖&字符串&集合&文件操作1

1、字典打印

 1 d = {'xiaohei':'123','xiaobai':'456'}
 2 print(d)
 3 print(d.items())
 4 print("*"*50)
 5 # 打印字典
 6 # 方法1:更高效
 7 for key in d:
 8     value = d.get(key)
 9     print('%s:%s'%(key,value))
10 print("*"*50)
11 # 方法2
12 for key,value in d.items():
13     print('%s:%s'%(key,value))

运行结果:

 

 

 

 

2、元组

 1 t = (1,2,3)
 2 
 3 # 读取
 4 print(t[0])
 5 print(t[-1])
 6 
 7 # 循环打印
 8 for i in t:
 9     print(i)
10 
11 # 一个元素的元组:注意逗号是必须的
12 t2 = ('lzh',)
13 print(t2)

 

1 t = (1,2,3)
2 # 特点:不能改变
3 t[0] = 3
4 print(t)

运行结果:

 

 

 

 

 

 

3、切片

 1 l = list(range(1,11))  # 结果:1-10
 2 print(l)
 3 
 4 print(l[0:5])  # 顾头不顾尾,结果:1-5
 5 print(l[:5])  # 从第一个开始取,结果:1-5
 6 
 7 print(l[5:10])  # 结果:6-10
 8 print(l[5:])  # 取到末尾,结果:6-10
 9 
10 print(l[0:10:2])  # step步长,结果:1、3、5、7、9
11 print(l[::2])  # 结果:1、3、5、7、9
12 
13 print(l[::-1])  # 从后往前取,结果:10-1
14 print(l[::-2])  # 结果:10、8、6、4、2
15 
16 print(l[0:11:-1]) # 无数据返回,下标统一用正数或负数
17 print(l[-1:-11:-1])  # 10-1
18 
19 # 只要有下标的都可以用切片取值
20 s = 'abcdefg'
21 print(s[::2])  # 结果:aceg
22 print(s[::-1])  # 结果:gfedcba

 

 

4、字符串常用方法

1 s = "lzhtest"
2 print(s.count('t'))  # 统计t出现的次数,结果:2
3 
4 print(s.index('t'))  # 返回t第一次出现的下标,结果:3
5 print(s.index('t',4))  # 返回t从下标4以后第一次出现的下标,结果:6
6 
7 # 如果元素不存在,find()返回-1;index()抛出异常
8 print(s.find('o'))
9 print(s.index('o'))
 1 s1 = "  lzhtest  \n"
 2 # 默认去掉字符串两边的空格和换行符
 3 print(s1)
 4 print(s1.strip())
 5 
 6 # 去掉左边的空格和换行符
 7 print(s1.lstrip())
 8 
 9 # 去掉左边的空格和换行符
10 print(s1.rstrip())
1 s = "lzhtest"
2 
3 print(s.startswith('l'))  # s是否以l开头,结果:True
4 print(s.endswith('t'))  # s是否以t结果,结果:True
5 
6 print(s.lower())  # s全部小写,结果:lzhtest
7 print(s.upper())  # s全部大写,结果:LZHTEST
 1 s3 = 'lzhtest'
 2 
 3 # 替换字符
 4 print(s3.replace('lzh','zsb'))  # 结果:zsbtest
 5 print(s3.replace('t',''))   # 结果:lzhes,替换所有t
 6 print(s3.replace('t','',1))   # 结果:lzhest,替换第一个t
 7 
 8 s = '123'
 9 s1 = '123a'
10 print(s.isdigit())  # 判断是否是数字,结果:True
11 print(s1.isdigit())  # 判断是否是数字,结果:False
 1 # s.join():连接字符串
 2 l = ['zsb','lzh','zrh']
 3 
 4 print(','.join(l))  # 结果:zsb,lzh,zrh
 5 print('='.join(l))  # 结果:zsb=lzh=zrh
 6 
 7 l3 = 'abcdefg'
 8 print(','.join(l3))  # 结果:a,b,c,d,e,f,g
 9 
10 l2 = [1,2,3,4,5,6]
11 print(','.join(l2))  # 报错,提示非字符串
 1 # s.split():分割字符串
 2 
 3 s='lzh,zsb'
 4 print(s.split(','))  # 结果返回一个列表:['lzh', 'zsb']
 5 
 6 s1 = 'lzh zsb'
 7 print(s1.split())  # 默认以空格分割,结果:['lzh', 'zsb']
 8 
 9 s2 = 'lzh.zsb'
10 print(s2.split('.'))  # 结果:['lzh', 'zsb']

 

 

5、集合

 1 # 集合
 2 # 1、集合天生可以去重
 3 # 2、集合是无序的
 4 
 5 s1 = {}  # 空字典
 6 print(type(s1))  #结果:<class 'dict'>
 7 s2 = set()  # 空集合
 8 print(type(s2))  # 结果:<class 'set'>
 9 
10 s = {1,2,3,4,5,6,7,7,6,1}
11 print(s)  # 结果:{1, 2, 3, 4, 5, 6, 7}
12 
13 # 列表去重:列表转换为字典,然后在转换为列表
14 l = [1,2,3,4,5,6,7,7,6,1]
15 l = list(set(l))
16 print(l)  # 结果:[1, 2, 3, 4, 5, 6, 7]
 1 s = {1,2,3,4,5,6,7,7,6,1}
 2 # 添加元素
 3 s.add(8)
 4 print(s)  # 结果:{1, 2, 3, 4, 5, 6, 7, 8}
 5 
 6 # 把另外一个集合加入这个集合里面
 7 s.update({4,5,6})
 8 print(s)  # 结果:{1, 2, 3, 4, 5, 6, 7, 8}
 9 
10 # 删除指定的元素
11 s.remove(4)
12 print(s)  # 结果:{1, 2, 3, 5, 6, 7, 8}
 1 # 关系测试,交集、并集、差集、对称集合
 2 l1 = [1,2,3,4]  # 学自动化的学生
 3 l2 = [2,4,5,6]  # 学性能的学生
 4 
 5 l1 = set(l1)
 6 l2 = set(l2)
 7 
 8 # 取交集,就是两个集合里面相同的元素
 9 print(l1 & l2)  # 结果:{2, 4}
10 print(l1.intersection(l2))
11 
12 # 并集,就是把两个结合合并在一起
13 print(l1 | l2)  # 结果:{1, 2, 3, 4, 5, 6}
14 print(l1.union(l2))
15 
16 # 差集:在a结合里面存着,在b集合不存在
17 print(l1-l2)  # 结果:{1, 3}
18 print(l1.difference(l2))
19 print(l2-l1)  # 结果:{5, 6}
20 
21 # 对称差集:把a集合和b集合里面相同的元素去掉后,剩下的
22 print(l1 ^ l2)  # 结果:{1, 3, 5, 6}
23 print(l2.symmetric_difference(l1))  # 结果:{1, 3, 5, 6}
 1 l3 = list(range(1,11))
 2 l3 = set(l3)
 3 l2 = [2,4,5,6]
 4 l2 = set(l2)
 5 print(l3)  # 结果:{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
 6 print(l2)  # 结果:{2, 4, 5, 6}
 7 
 8 # 判断l3是l2是的父集合
 9 print(l3.issuperset(l2))  # 结果:True
10 
11 # 判断l2是l3的子集合
12 print(l2.issubset(l3))  # 结果:True

 

 

6、文件操作

 1 # 1、打开文件;2、读、写文件;3、关闭文件
 2 # 打开模式:r:只读模式;w:写模式;a:追加模式
 3 f = open('a.txt','r',encoding='utf-8')
 4 
 5 # # 读文件,获取文件里面的全部内容
 6 # result = f.read()
 7 # print(result)
 8 
 9 # # 读取文件,一次只读一行
10 # result = f.readline()
11 # print(result)
12 
13 # 读取文件所有行到一个list,每行的内容是list的一个元素
14 result = f.readlines()
15 print(result)
16 
17 f.close()
 1 f = open('a.txt', 'w', encoding='utf-8')
 2 # 写文件
 3 f.write('lion')
 4 f.close()
 5 
 6 f = open('a.txt', 'a', encoding='utf-8')
 7 l = ['tadpole\n','fish']
 8 f.write("\n")
 9 f.writelines(l)
10 f.close()
posted @ 2020-04-26 23:23  tour8  阅读(191)  评论(0)    收藏  举报