-
编写一个程序,交换指定字典的key和value。
例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'}
dict1 = {'a': 1, 'b': 2, 'c': 3} dict2 = {} for key, value in dict1.items(): dict2[value] = key print(dict2)
-
编写一个程序,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串
例如: 传入'12a&bc12d-+' --> 'abcd'
str1 = '12a&bc12d-+' str2 = '' for i in str1: if 'a' <= i <='z' or 'A' <= i <= 'Z': str2 += i print(str2)
-
写一个自己的capitalize函数,能够将指定字符串的首字母变成大写字母
例如: 'abc' -> 'Abc' '12asd' --> '12Asd'
str1 = '12asd' str2 = '' flag = 0 for i in str1: if not ('a' <= i <= 'z'): str2 += i else: if flag < 1: if 'a' <= i <= 'z': str2 += chr(ord(i) - 32) flag += 1 else: str2 += i print(str2)
-
写程序实现endswith的功能,判断一个字符串是否已指定的字符串结束
例如: 字符串1:'abc231ab' 字符串2:'ab' 函数结果为: True 字符串1:'abc231ab' 字符串2:'ab1' 函数结果为: False
str1 = 'abc231ab' str2 = 'ab1' a = len(str1) b = len(str2) for i in range(-1, (-b+1), -1): if str1[i] != str2[i]: print(False) break else: print(True)
-
写程序实现isdigit的功能,判断一个字符串是否是纯数字字符串
例如: '1234921' 结果: True '23函数' 结果: False 'a2390' 结果: False
str1 = '23函数' for i in str1: if not '0' <= i <= '9': print(False) break else: print(True)
-
写程序实现upper的功能,将一个字符串中所有的小写字母变成大写字母
例如: 'abH23好rp1' 结果: 'ABH23好RP1'
str1 = 'abH23好rp1' str2 = '' count = 0 for i in str1: if not 'a' <= i <= 'z': str2 += i else: str2 += chr(ord(i) - 32) count += 1 if count !=0: print(str2) else: print(str1)
-
写程序获取指定序列中元素的最大值。如果序列是字典,取字典值的最大值
例如: 序列:[-7, -12, -1, -9] 结果: -1 序列:'abcdpzasdz' 结果: 'z' 序列:{'小明':90, '张三': 76, '路飞':30, '小花': 98} 结果: 98
dict1 = {'小明':90, '张三': 76, '路飞':30, '小花': 98} if type(dict1) == str: text2 = '' max1 = ord(dict1[0]) text2 += dict1[0] for i in dict1: value = ord(i) if value > max1: max1 = value text2 += i print(text2[len(text2)-1]) if type(dict1) == dict: count = 0 max1 = 0 text2 = [] for key, value in dict1.items(): value1 = dict1[key] if count > 0: if value1 > max1: max1 = value1 text2.append(dict1[key]) else: max1 = value1 text2.append(dict1[key]) print(text2[len(text2)-1]) if type(dict1) == list: text2 = [] max1 = dict1[0] text2.append(dict1[0]) for i in dict1: value = i if value > max1: max1 = value text2.append(i) print(text2[len(text2) - 1])
-
写程序实现replace函数的功能,将指定字符串中指定的旧字符串转换成指定的新字符串
例如: 原字符串: 'how are you? and you?' 旧字符串: 'you' 新字符串:'me' 结果: 'how are me? and me?'
str1 = 'how are you? and you?' str2 = 'you' str3 = 'me' l = len(str1) m = len(str2) n = len(str3) i = 0 while i <= l-m: if str1[i:i + m] == str2: str1 = str1[:i] + str3 + str1[i + m:] i = i + n else: i += 1 print(str1)
-
写程序实现split的功能,将字符串中指定子串作为切割点对字符串进行切割
例如:原字符串: 'how are you? and you?' 切割点: 'you' 结果: ['how are ', '? and ', '?']
str1 = 'how are you? and you?' str2 = 'you' str3 = [] l = len(str2) while True: index = str1.find(str2) if index == -1: str3.append(str1) break else: str3.append(str1[:index]) str1 = str1[index + l:] print(str3)
-
用思维导图(xmind)总结四大容器:列表、字典、元组、集合
day28-字符串练习题
最新推荐文章于 2022-09-29 20:51:50 发布