第41题(嵌套元组唯一元素)
def get_unique_elements(nested_tuples):
unique_elements = set()
for i in nested_tuples:
unique_elements.update(i)
# 将集合转化为列表,并进行排序
unique_elements_list = sorted(list(unique_elements))
return unique_elements_list
# 初始化嵌套元组
nested_tuples = []
# 获取用户输入
for _ in range(3):
tuple_elements = tuple(map(int, input().split()))
nested_tuples.append(tuple_elements)
# 调用函数
print(get_unique_elements(nested_tuples))
第42题(日期相差多少天)
import datetime
def calculate_days_between(date1, date2):
# 将字符串转换为datetime对象
date1 = datetime.strptime(date1, '%Y-%m-%d')
date2 = datetime.strptime(date2, '%Y-%m-%d')
difference = date2 - date1
# 返回天数差异
return difference
# 获取用户输入
date1 = input()
date2 = input()
# 调用函数
print(calculate_days_between(date1, date2))
第43题(单词字母替换)
def shift_char(word):
result = ""
for char in word:
if char.isalpha():
# 判断字母是大写还是小写,然后决定移位后的字母
if char.isupper():
result += chr((ord(char) - 65 + 1) % 26 + 65) # A的ASCII码是65
else:
result += chr((ord(char) - 97 + 1) % 26 + 97) # a的ASCII码是97
else:
result += char # 如果不是字母,直接添加到结果中
return result
# 获取单词
word = input()
# 调用函数
print(shift_char(word))
第44题(缺失数字之和)
def sum_missing_numbers(nums):
# 找到列表中的最小值和最大值
min_num = min(nums)
max_num = max(nums)
# 计算最小值和最大值之间所有数字的总和
total_sum = (max_num + min_num) * (max_num - min_num + 1) // 2
# 计算列表中所有数字的总和
nums_sum = sum(nums)
# 计算缺失数字的总和
missing_sum = total_sum - nums_sum
return missing_sum
# 获取输入转为数字列表
nums = list(map(int, input().split()))
# 调用函数
print(sum_missing_numbers(nums))
第45题(字典转为列表)
def dict_to_sorted_list(dictionary):
# 使用items()方法将字典转换为列表,每个元素为(key, value)格式
list_of_items = list(dictionary.items())
# 使用sort()方法根据键(key)进行排序
list_of_items.sort(key=lambda x: x[0])
return list_of_items
# 获取输入转为字典
dictionary = eval(input())
# 调用函数
print(dict_to_sorted_list(dictionary))