-
编写一个程序,交换指定字典的key和value。
例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'}
# 解法1 使用dict.items()方法 dict1={'a':1, 'b':2, 'c':3} new_dict={value:key for key,value in dict1.items()} print(new_dict) # {1: 'a', 2: 'b', 3: 'c'} # 解法2 使用zip()方法 dict1={'a':1, 'b':2, 'c':3} new_dict=dict(zip(dict1.values(),dict1.keys())) print(new_dict) # {1: 'a', 2: 'b', 3: 'c'}
-
编写一个程序,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串
例如: 传入'12a&bc12d-+' --> 'abcd'
str2='12a&bc12d-+' str_2='' for i in str2: if 'a'<=i<='z' or 'A'<=i<='Z': str_2+=i print(str_2) # abcd
-
写一个自己的capitalize函数,能够将指定字符串的首字母变成大写字母
例如: 'abc' -> 'Abc' '12asd' --> '12asd'
# 解法1 str3=input('请输入字符串:') print(str3.capitalize()) # 解法2 str_3=chr(ord(str3[0])-32)+str3[1:] print(str_3) # 请输入字符串:aver # Aver
-
写程序实现endswith的功能,判断一个字符串是否已指定的字符串结束
例如: 字符串1:'abc231ab' 字符串2:'ab' 函数结果为: True 字符串1:'abc231ab' 字符串2:'ab1' 函数结果为: False
# 解法1 str4='abc231ab' str_4=input('请输入字符串:') # ab print(str4.endswith(str_4)) # True # 解法2 str4='abc231ab' str_4=input('请输入字符串:') # ab len1=len(str4) len2=len(str_4) if str4[len1-len2:]==str_4: print(True) else: print(False)
-
写程序实现isdigit的功能,判断一个字符串是否是纯数字字符串
例如: '1234921' 结果: True '23函数' 结果: False 'a2390' 结果: False
# 解法1 str5=input('请输入字符串:') print(str5.isdigit()) # 解法2 str5=input('请输入字符串:') if str5!='': for i in str5: if not '0'<=i<='9': print(False) break else: print(True) else: print(False)
-
写程序实现upper的功能,将一个字符串中所有的小写字母变成大写字母
例如: 'abH23好rp1' 结果: 'ABH23好RP1'
# 解法1 str6='abH23好rp1' print(str6.upper()) # ABH23好RP1 # 解法2 str6='abH23好rp1' str_6='' for i in str6: if 'a'<=i<='z': str_6+=chr(ord(i)-32) else: str_6+=i print(str_6) # ABH23好RP1
-
写程序获取指定序列中元素的最大值。如果序列是字典,取字典值的最大值
例如: 序列:[-7, -12, -1, -9] 结果: -1 序列:'abcdpzasdz' 结果: 'z' 序列:{'小明':90, '张三': 76, '路飞':30, '小花': 98} 结果: 98
str7=[-7, -12, -1, -9] # str7='abcdpzasdz' # str7={'小明':90, '张三': 76, '路飞':30, '小花': 98} if type(str7)==list: print(max(str7)) # -1 elif type(str7)==str: print(max(str7)) # z elif type(str7)==dict: max_=0 for key,value in str7.items(): # print(key,value,type(value)) if value>max_: max_=value print(max_) # 98
-
写程序实现replace函数的功能,将指定字符串中指定的旧字符串转换成指定的新字符串
例如: 原字符串: 'how are you? and you?' 旧字符串: 'you' 新字符串:'me' 结果: 'how are me? and me?'
# 解法1 str8='how are you? and you?' str_8=str8.replace('you','me') print(str_8) # how are me? and me? # 解法2 str8='how are you? and you?' str_8='' # old_str=input('输入被替换的旧字符串:') # new_str=input('输入替换的新字符串:') old_str='you' new_str='me' len1=len(old_str) i=0 for _ in range(len(str8)-len1-1): if str8[i:i+len1]==old_str: print('**') str_8+=new_str i+=len1 else: str_8+=str8[i] i+=1 print(str_8) # how are me? and me?
-
写程序实现split的功能,将字符串中指定子串作为切割点对字符串进行切割
例如:原字符串: 'how are you? and you?' 切割点: 'you' 结果: ['how are ', '? and ', '?']
# 解法1 str9='how are you? and you?' print(str9.split('you')) # ['how are ', '? and ', '?'] # 解法2 str9='how are you? and you?' str_9='' i=0 dian='you' len1=len(dian) for _ in range(len(str9)-len1-1): if str9[i:i+len1]==dian: str_9+=',' i+=len1 else: str_9+=str9[i] i+=1 print(str_9) # how are ,? and ,?