Day3笔记
字符串的常用方法
1 name = ' zhang ,jingh ' 2 stus = ['lxy', 'zyf', 'wdz', 'nl', 'wy', 'gfw'] 3 print(name.upper()) 4 print(name.lower()) 5 print(name.center(50,'*')) 6 print(name.strip()) 7 print(name.lstrip()) 8 print(name.rstrip()) 9 print(name.replace('h','xiaoguaiguai',1)) 10 print(name.title()) 11 print(name.split(',')) 12 #1、分割字符串,2、把字符串变成一个list 3、默认是以空格和换行符分割的 13 print(';'.join(stus)) 14 #1、是吧list变成字符串的 2、以某个字符串连接
字符串的切片
1 import string 2 stus = ['铁锤', '小黑', '小白', '糖糖'] 3 numbers = string.digits 4 print(numbers) 5 numbers = list(string.digits)#转成List 6 print(numbers) 7 print(numbers[::-1])#倒叙
元祖与字符串都是不可变类型
1 '''元组和字符串都是不可变类型''' 2 cities=('北京','天津') 3 cities[0]='深圳' 4 # #TypeError: 'tuple' object does not support item assignment 5 6 s = 'zhe ge zi fu' 7 s[0]='q' 8 #TypeError: 'str' object does not support item assignment 9 10 '''如何将两个变量的值不通过第三方变量进行兑换''' 11 a = 1 12 b = 2 13 a,b=b,a 14 print(a,b)
列表的遍历
1 stus = ['铁锤','大拿','小红','小绿'] 2 print(stus[0]) 3 print(stus[:2])#顾头不顾尾 4 print(stus[-1])#取最后一个元素 5 6 for stu in stus: 7 print(stu) 8 #此遍历方法同样应用于字符串
字典:
1 '''字典的使用''' 2 #增:setdefault 和 给key 赋值的方式区别在于~setdefault 无法更改value 3 d = {'name':'屁屁','age':18} 4 d.setdefault('addr','天通苑') 5 d['age']=48 6 d.setdefault('age',48) 7 print(d) 8 9 #改:将upadate 中的内容增添到原来的字典里,并且如果有重复的Key 原来字典中的value 会被覆盖 10 b = {'习惯':'抽烟,喝酒,烫头','age':36,'sex':'男'} 11 d.update(b) 12 print(d) 13 14 #删: 15 d.pop('name') 16 del d['age'] 17 d.clear() 18 print(d) 19 20 #查询: 21 b = {'习惯':'抽烟,喝酒,烫头','age':36,'sex':'男'} 22 print(b['age']) 23 print(b.get('age1')) 24 #区别在于.get 到不存在的key 会返回None 程序会继续往下走 25 for i in b: 26 print(i) 27 #取到的都是Key 28 for key,value in b.items(): 29 print(key,value)'
1 '''字典的高效循环''' 2 d = {'name':'王铁柱','age':38} 3 for k in d: 4 print(k,d.get(k)) 5 6 ################练习 ############################## 7 '''记录学生是否教了作业 8 1.如果名字已知直接在后面添加日期和状态 9 2.如果名字新增 10 学生名字 11 日期 12 状态 13 ''' 14 zuoye = {'铁锤':{'2018-6-3':'1','2018-6-4':'0'},'大拿':{'2018-6-3':'1','2018-6-4':'0'}}#相当于数据库 15 '''判断输入是否为空 16 构造一个小字典:{date,status} 17 把构造好的字典和以前的合并到一起 18 ''' 19 for i in range(5): 20 name = input('请输入学生名字:').strip() 21 date = input('请输入日期').strip() 22 status= input('输入状态').strip() 23 if name and date: 24 status = '已交' if status else '未交' 25 if name in zuoye: 26 zuoye[name][date] = status#注意这里没有引号 27 else: 28 newdic = {date:status} 29 zuoye[name] = newdic 30 print(zuoye) 31 else: 32 print('输入不能为空')