-
写一个函数,实现maketrans的功能,将两个字符串转换成一个字典,第一个字符串中的字符是键,第二个字符串中的字符是值
第一个字符串: ‘abcmn’ 第二个字符串:‘一二三四五’
结果:{‘a’: ‘一’, ‘b’: ‘二’, ‘c’: ‘三’, ‘m’: ‘四’, ‘n’: ‘五’}
# 第一版 def maketrans(str1:str, str2:str) -> dict: dict1 = {} for x in range(len(str1)): dict1[str1[x]] = str2[x] return dict1 # 完善版 def maketrans(key_str:str, value_str:str) -> dict: """ 将两个字符串转换成一个字典 :param key_str: 提供键的字符串 :param value_str: 提供值得字符串 :return: 新的字典 """ len1 = len(key_str) len2 = len(value_str) result = {} for index in range(min(len1, len2)): result[key_str[index]] = value_str[index] return result str1 = 'abccd' str2 = '一二三四五' dict1 = maketrans(str1, str2) print(dict1)
-
写一个属于自己的join函数,可以将任意序列中的元素以指定的字符串连接成一个新的字符串
序列: [10, 20, 30, ‘abc’] 字符串: ‘+’ 结果:‘10+20+30+abc’
序列: ‘abc’ 字符串: ‘–’ 结果:‘a–b--c’
注意:序列中的元素可以不是字符串哟
# 第一版 def join(seq, str1:str) -> str: seq = list(seq) result = '' for x in seq[:-1]: result += str(x) + str1 return result + str(seq[-1]) # 完善版 def join(seq, str1:str) -> str: """ 可以将任意序列中的元素以指定的字符串连接成一个新的字符串。 :param seq: 任意序列 :param str1: 指定字符串 :return: 新的字符串 """ seq = list(seq) result = '' for x in seq[:-1]: result += str(x) + str1 return result + str(seq[-1]) list1 = 'abc' str1 = '---' print(join(list1, str1))
-
写一个输入自己的upper函数,判断指定字符串是否是纯大写字母字符串
‘AMNDS’ -> True
‘amsKS’ -> False
‘123asd’ -> False
# 第一版 def uppper(str1:str): for x in str1: if not 'A' <= x <= 'Z': return False else: return True # 完善版 def uppper(str1:str): """ 判断指定字符串是否是纯大写字母字符串。 :param str1: 指定字符串 :return: 判断结果 """ for x in str1: if not 'A' <= x <= 'Z': return False return True print(uppper('ABCDE')) print(uppper('ada123')) print(uppper('Ada123'))
-
写一个clear函数,清空指定列表。
注意:功能是将原列表清空,不产生新的列表
# 第一版 def clear(list1:list): for x in list1[:]: list1.remove(x) return list1 # 完善版 def clear(list1:list): """ 清空指定列表。 :param list1:指定列表 :return:清空后的列表 """ for x in list1[:]: list1.remove(x) return list1 list1 = [1, 2, 3, 4, 5] print(clear(list1))
-
写一个reverse函数,将列表中的元素逆序
两种方法:1.产生一个新的列表 2.不产生新的列表,直接修改原列表元素的顺序
# 方法一 def reverse(list1:list) -> list: new_list1 = [] for x in list1[::-1]: new_list1.append(x) return new_list1 # 方法一完善版 def reverse(list1:list): """ 将列表中的元素逆序 :param list1: 原列表 :return: 新列表 """ return list1[::-1] # 方法二完善版 def reverse(list1: list): """ 将列表中的元素逆序 :param list1: 原列表 :return: None """ len1 = len(list1) for index1 in range(len1 // 2): index2 = len1 - index1 - 1 list1[index1], list1[index2] = list1[index2], list1[index1] list1 = [1, 2, 3, 4, 5] reverse(list1) print(list1)
day11-函数基础作业(完善版)
最新推荐文章于 2024-10-02 10:53:34 发布