Python的字符串、字典、列表、元组等创建与操作
1.字符串的创建、操作和输出
s1 = 'hello,world!' s2 = "hello,world2" s3 = "" print(s1,s2,s3) print(s1+s2) print('ll' in s2)#in的用法 str2 = 'adc111222333' print(str2[2:5]) print(str2[2:]) print(str2[::2])#每隔俩个数打印一次 print(str2[::-1])#每次减一打印一次,倒序 print(str2[-3::-1])#从倒数第三个开始,每次减一打印
str1 = 'hello,world!' #通过内置函数计算字符串的长度 print(len(str1)) #使首字母大写 print(str1.capitalize()) #title每个单词大写 print(str1.title()) #upper每个字母大写 print(str1.upper()) #找到字符对应的位置 print(str1.find('ld')) print(str1.find('t')) #index查找字符的位置 print(str1.index('ld')) # print(str1.index('t'))找不到时会报错 #检查字符串是否以指定的字符串开头 print(str1.startswith('he')) print(str1.startswith('hle')) #检查字符串是否以指定字符串结尾 print(str1.endswith('ld')) print(str1.endswith('!')) #将字符串以指定宽度居中并在两侧填充指定的字符 print(str1.center(50,'*')) #将字符以指定宽度靠右放置并在左侧填充指定的字符 print(str1.rjust(50,' ')) str2 = 'abc123456' #检查字符串是否以数字构成 print(str2.isdigit()) #检查字符串是否以字母构成 print(str2.isalpha()) #检查字符串是否以数字和字母构成 print(str2.isalnum())
a,b = 5,4 #格式化输出字符串 print('%d*%d=%d'%(a,b,a*b)) print('{0}*{1}={2}'.format(a,b,a*b)) print(f'{a}*{b}={a*b}')
2.列表的操作
#列表 list1 = [1,3,5,7,10] print(list1) #乘号表示列表的重复 list2 = [1,2,4,8]*3 print(list2) #计算列表的长度 print(len(list2)) #列表索引运算 print(list1[0]) print(list1[2]) print(list1[-1]) print(list1[-2]) #替换列表中下标为2的元素 list2[2] = 300 print(list2) #列表的遍历输出 for index in range(len(list1)): print(list1[index]) #通过enumerate函数处理之后再遍历可以同时获得元素索引和至 for index,elem in enumerate(list1): print(index,elem) list3 = [1,2,3,4] list4 = [5,6,7,8] #向列表添加元素 list3.append(200) list3.insert(1,400) list3+=[1000,2000] print(list3) #判断成员是不是在列表中,r如果存在就移除 if 3 in list3: list3.remove(3) print(list3) #总指定位置删除元素 list3.pop(0) print(list3) #清空列表元素 list3.clear() print(list3) #列表切片操作 fruits = ['grape','apple','strawberry','waxberry'] #添加 fruits += ['pitaya','pear','banana'] print(fruits) #切片 fruits3 = fruits[:] print(fruits) fruits4 = fruits[-3:-1] print(fruits4) #反向切片 fruits5 = fruits[::-1] print(fruits5) list1 = ['orange','apple','banana','fish'] list2 = sorted(list2) print(list2)
3.元组的操作
#定义一个元组 t = ('马文飞',20,True,'开封尉氏') print(t) #获取元组中的值 print(t[0]) print(t[2]) #遍历元组 for member in t: print(member) #重新给元组赋值 #不可单独修改一项内容修改,而列表可以 t = ('马小飞',19,True,'南曹乡') print(t) #将元组转换成列表 people = list(t) print(people) #修改列表的内容 people[0]='马文飞一号' print(people) #将列表转化为元组 list1 = ['apple','banana','orange','watermelon'] tuple1 = tuple(list1) print(tuple1)
4.集合的操作
#创建一个集合 set1 = {1,2,3,4,5,6,7} print(set1) print('length = ',len(set1)) #创建集合的构造器语法 set2 = set(range(1,20)) set3 = set((1,2,3,4,5)) print(set2,set3) #创建集合的推导式语法 set4 = {num for num in range(1,100) if num % 3 == 0 and num % 5 == 0} print(set4) #向集合中添加元素和从集合中删除元素,重复的元素不会添加 set1.add(8) set1.add(7) print(set1) set2.update([30,40]) print(set2) set2.discard(5) print(set2) if 10 in set2: set2.remove(10) print(set2) print(set1.pop())#随机移除一个元素
4.1集合的交并差等运算
set1 = {num for num in range(1,10)} set2 = {num for num in range(1,20) if num % 3==0} set3 = {num for num in range(1,10) if num % 5==0} print(set1,set2,set3) #求交集 print(set1&set2) print(set1.intersection(set2)) #求并集 print(set1|set2) print(set1.union(set2)) #求差集 print(set1 - set2) print(set1.difference(set2 )) #返回两个集合中不重复的元素集合,即会移除两个集合中都存在的元素 print(set1^set2) print(set1.symmetric_difference(set2)) #判断子集 print(set3 <= set1) print(set1 <= set2) print(set3.issubset(set1)) #判断超集,超集和子集相对应,超集是前者的元素都在后者的里面 print(set1>=set3) print(set1.issuperset(set3))
5.使用字典
#创建字典 scores = {'马文飞':20,'翟华兵':21,'秦旭壮':19} print(scores) #创建字典的构造器语法 items1 = dict(one=1,two=2,three=3,four=4) print(items1) #通过zip函数将两个序列压成字典 items2 = dict(zip(['a','b','c'],'123')) print(items2) #创建字典的推导语法 items3 = {num:num ** 2 for num in range(1,10)} print(items3) #通过键来获取字典的值 print(scores['马文飞']) print(scores['翟华兵']) #对字典中的键值进行遍历 for key in scores: print(f'{key}:{scores[key]}') #更新字典中的元素 scores['魏家剑'] = 20 scores['苏艺'] = 20 if '丁文杰' not in scores: scores['丁文杰'] = 20 print(scores) #get() 函数返回指定键的值,如果值不在字典中返回默认值。 print(scores.get('马文飞')) print(scores.get('老马',50)) print(scores) #删除字典的值 #popitem() 方法返回并删除字典中的最后一对键和值 print(scores.popitem()) print(scores.popitem()) print(scores) print(scores.pop('马文飞',20)) print(scores) #清空字典 scores.clear() print(scores)
每天都要交开开心心的!加油小飞!
代码成就万世基积沙镇海
梦想永在凌云意意气风发