实验二、Python 运算符、内置函数、序列基本用法
一、实验目的:
1、熟练运用 Python 运算符。
2、熟练运用 Python 内置函数。
3、养成对用户输入立即进行类型转换的习惯。
4、了解lambda表达式作为函数参数的用法。
5、了解列表、元组、字典、集合的概念和基本用法。
6、了解Python函数式编程模式。
二、实验内容:
1、编写程序,输入任意大的自然数,输出各位数字之和。
2、编写程序,输入两个集合 setA 和 setB,分别输出它们的交集、并集和差集 setA-setB。
3、编写程序,输入一个自然数,输出它的二进制、八进制、十六进制表示形式。
4、编写程序,输入一个包含若干整数的列表,输出新列表,要求新列表中只包含原列表中的偶数。
5、编写程序,输入两个分别包含若干整数的列表IstA和lstB,输出一个字典,要求使用列表istA中的元素作为键,列表IstB中的元素作为值,并且最终字典中的元素数量取决于IstA和istB中元素最少的列表的数量。
6、编写程序,输入一个包含若干整数的列表,输出新列表,要求新列表中所有元素来自于原列表,并且降序排列。
7、编写程序,输入一个包含若干整数的列表,输出列表中所有整数连乘的结果。
8、编写程序,输入两个各包含2个整数的列表,分别表示城市中两个地点的坐标,输出两点之间的曼哈顿距离。
9、编写程序,输入包含若干集合的列表,输出这些集合的并集。要求使用reduce()函数和lambda表达式完成。
10、编写程序,输入等比数列的首项、公比(不等于1且小于36的正整数)和一个自然数n,输出这个等比数列前n项的和。关键步骤要求使用内置函数int().
- 实验步骤:
- 程序代码(文本形式)
1.
x=input('请输入自然数:')
list=list(x)
sum=0
for i in range(len(list)):
sum+=int(list[i])
print(sum)
2.
a=input('请输入集合setA:')
b=input('请输入集合setB:')
a=set(a)
b=set(b)
c=a|b
tmp=[j for j in a if j in b]
tmp2=[i for i in a if i not in b]
print('交集为:',tmp)
print('并集为:',c)
print('差集为:',tmp2)
3.
x=input('请输入一个自然数:')
x=int(x)
print('转化为二进制为:',bin(x))
print('转化为八进制为:',oct(x))
print('转化为十六进制为:',hex(x))
4.
x=input('请输入一个列表:')
x=list(x)
tmp=[j for j in x if int(j)%2==0]
print('新的列表为:',tmp)
5.
IstA=['a','b','c']
IstB=['1','2','3','4','5']
x=dict(zip(IstA,IstB))
print(x)
6.
x=list(range(18))
import random
random.shuffle(x)
print('原列表为:',x)
print('新列表为:',sorted(x,reverse=True))
7.
x=['12','321','23','657','76','98','708','3','3482','58']
result=1
for i in x:
result*=int(i)
print(result)
8.
def manhattanDistance(x,y):
return sum(map(lambda i,j:abs(i-j),x,y))
a=[56,78]
b=[27,67]
print(manhattanDistance(a, b))
9.
from functools import reduce
a={1,2,4,5,6,67,54,243}
b={2,3,234,5,778,9756}
list1=[]
list1.append(a)
list1.append(b)
d=reduce(lambda x,y:x|y,list1)
print(d)
10.
a=input('请输入首项:')
a=int(a)
q=input('请输入公比:')
q=int(q)
while True:
if q not in range(2,36):
q=input('输入有误,请重新输入一个大于1小于36的正整数:')
q=int(q)
if q in range(2,36):
break
n=input('请输入一个自然数n:')
n=int(n)
s=(a*(1-q**n))/(1-q)
print((s))
- 结果图片
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CSDN-Ada助手: 不知道 Python入门 技能树是否可以帮到你:https://edu.csdn.net/skill/python?utm_source=AI_act_python
慕溪同学: 我添加可变形卷积的时候报了这个错,为什么需要改成False呢
fankeYang️: 好滴,谢谢
Lion Long: 文章写得很好,初来乍到,希望多多关注。期待更多文章!
CSDN-Ada助手: 非常棒的博客!恭喜你完成了第18篇文章。使用集合实现筛选法求素数的方法非常巧妙,你对Python的实现也非常出色。持续创作博客是一个很好的习惯,它不仅有助于你深入理解和巩固所学的知识,同时也能与他人分享你的见解。接下来,我建议你可以尝试探索一些与素数相关的算法或者应用,比如质因数分解、素数判定等等。期待看到你的下一篇作品!加油!