(1)编写程序,输入任意大的自然数,输出各位数字之和
num = input('请输入一个自然数:')
print(sum(map(int, num)))
(2)编写程序,输入两个集合setA和setB,分别输出它们的交集、并集和差集setA-setB。
setA = eval(input('请输入一个集合:'))
setB = eval(input('再输入一个集合:'))
print('交集:', setA & setB)
print('并集:', setA | setB)
print('setA-setB:', setA - setB)
(3)编写程序,输入一个自然数,输出它的二进制、八进制、十六进制表示形式。
num = int(input('请输入一个自然数:'))
print('二进制:', bin(num))
print('八进制:', oct(num))
print('十六进制:', hex(num))
(4)编写程序,输入一个包含若干整数的列表,输出一个新列表,要求新列表中只包含原列表中的偶数。
lst = input('请输入一个包含若干整数的列表:')
lst = eval(lst)
print(list(filter(lambda x: x%2==0, lst)))
(5)编写程序,输入两个分别包含若干整数的列表lstA和lstB,输出一个字典,要求使用列表lstA中的元素作为键,列表lstB中的元素作为值,并且最终字典中的元素数量取决于lstA和lstB中元素最少的列表的数量。
lstA = eval(input('请输入包含若干整数的列表lstA:'))
lstB = eval(input('请输入包含若干整数的列表lstB:'))
result = dict(zip(lstA, lstB))
print(result)
(6)编写程序,输入一个包含若干整数的列表,输出新列表,要求新列表中的所有元素来自于输入的列表,并且降序排列。
lst = eval(input('请输入包含若干整数的列表lst:'))
print(sorted(lst, reverse=True))
(7)编写程序,输入一个包含若干整数的列表,输出列表中所有整数连乘的结果。
from functools import reduce
lst = eval(input('请输入包含若干整数的列表lst:'))
print(reduce(lambda x,y: x*y, lst))
(8)编写程序,输入两个各包含2个整数的列表,分别表示城市中两个地点的坐标,输出两点之间的曼哈顿距离。
lstA = eval(input('请输入包含2个整数的列表lstA:'))
lstB = eval(input('请输入包含2个整数的列表lstB:'))
print(sum(map(lambda i,j:abs(i-j), lstA, lstB)))
(9)编写程序,输入包含若干集合的列表,输出这些集合的并集。要求使用reduce()函数和lambda表达式完成。
from functools import reduce
lstSets = eval(input('请输入包含若干集合的列表:'))
print(reduce(lambda x,y:x|y, lstSets))
(10)编写程序,输入等比数列的首项、公比(不等于1且小于36的正整数)和一个自然数n,输出这个数列前n项的和。关键步骤要求使用内置函数int()。
a1 = int(input('请输入等比数列首项:'))
q = int(input('请输入等比数列公比#(不等于1且小于36的正整数):'))
n = int(input('请输入一个自然数:'))
result = a1 * int('1'*n, q)
print(result)
(11)编写程序,输入一个字符串,输出其中出现次数最多的字符及其出现的次数。要求使用字典。
data = input('请输入一个字符串:')
d = dict()
for ch in data:
d[ch] = d.get(ch, 0) + 1
mostCommon = max(d.items(), key=lambda item:item[1])
print(mostCommon)