实验二、Python 运算符、内置函数、序列基本用法

一、实验目的:

1、熟练运用 Python 运算符。

2、熟练运用 Python 内置函数。

3、养成对用户输立即进行类型转换的习惯。
4、了解lambda表达式作为函数参数的用法。
5、了解列表、元组、字典、集合的概念和基本用法。
6、了解Python函数式编程模式。

二、实验内容:

1、编写程序,输入任意大的自然数,输出各位数字之和。

2、编写程序,输入两个集合 setA setB,分别输出它们的交集、并集和差集 setA-setB

3、编写程序,输入一个自然数,输出它的二进制、八进制、十六进制表示形式。

4、编写程序,输入一个包含若干整数的列表,输出新列表,要求新列表中只包含原列表中的偶数。

5、编写程序,输入两个分别包含若干整数的列表IstAlstB,输出一个字典,要求使用列表istA中的元素作为键,列表IstB中的元素作为值,并且最终字典中的元素数量取决于IstAistB中元素最少的列表的数量。

6、编写程序,输入一个包含若干整数的列表,输出新列表,要求新列表中所有元素来自于原列表,并且降序排列。

7、编写程序,输入一个包含若干整数的列表,输出列表中所有整数连乘的结果。

8、编写程序,输入两个各包含2个整数的列表,分别表示城市中两个地点的坐标,输出两点之间的曼哈顿距离。
9、编写程序,输入包含若干集合的列表,输出这些集合的并集。要求使用reduce()函数和lambda表达式完成。
10、编写程序,输入等比数列的首项、公比(不等于1且小于36的正整数)和一个自然数n,输出这个等比数列前n项的和。关键步骤要求使用内置函数int().

  • 实验步骤:
  1. 程序代码(文本形式)

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. 结果图片

  1.

  2.

  3.

  4.

  5.

  6.

  7.

  8.

  9.

  10.

猜你喜欢

转载自blog.csdn.net/m0_65168503/article/details/131143495
今日推荐