Python练习题

T1.编写程序,输入一个自然数字符串,然后输出各位数字之和。

a=input("输入一串数字:")

b=0

for i in a:

  b=b+eval(i)

print("数字之和为:{}".format(b))

T2.输入一个字符串,输出反转后的字符串。

a=input("输入一个字符串:")

t=list(a)

t.reverse()

for i in t:

  print(i,end='')

T3.输入一个包含若干整数的列表,输出列表中的最大值

s=input("输入任意数据:")

t=[int(n) for n in s.split(',')]

t.sort(reverse=True)

print(t[0])

T4.输入一个包含若干整数的列表,把列表中所有的整数转换为字符串,然后输出包含这些字符串的列表

s=input("输入若干整数:")

t=[str(n) for n in s.split(',')]

a=list(t)

print(a)

T5.输入一个包含若干数据的列表,输出该列表中等价于True的元素组成的列表。

s=input("输入任意数据:")

t=[str(n) for n in s.split(',')]

a=list(t)

for i in range(len(a)):

  if a[i-1] in 'False' or 'None' or '0':

    del(a[i-1])

print(a)

T6.输入一个包含若干自然数的列表,输出这些数的平均值,结果保留三位小数

s=input("输入任意数据:")

t=[int(n) for n in s.split(',')]

x=0

for i in range(len(t)):

x=x+t[i-1]

y=x/len(t)

print("平均值为{:.3f}".format(y))

T7.输入一个包含若干自然数的列表,输出这些自然数降序排序后的列表

s=input("输入任意数据:")

t=[int(n) for n in s.split(',')]

t.sort(reverse=True)

print(t)

T8.输入一个包含若干字符的列表,输出一个新列表,新列表的每个元素为原列表每个自然数的位数。

s=input("输入任意数据:")

t=[str(n) for n in s.split(',')]

for i in range(len(t)):

  t[i-1]=len(t[i-1])

print(t)

T9.输出一个包含若干实数的列表,输出其中绝对值最大的实数

s=input("输入任意数据:")

t=[int(n) for n in s.split(',')]

m=t[0]

for x in t:

  if abs(x)>abs(m):

    m=x

print(m)

T10.输入一个包含若干整数的列表,输出这些整数的乘积。

s=input("输入任意数据:")

t=[int(n) for n in s.split(',')]

a=1

for i in range(len(t)):

  a*=t[i-1]

print("乘积为{}".format(a))

T11.输入两个包含若干整数的等长列表,把这两个列表看作两个向量,输出这两个向量的内积。

s=input("输入一组数据:")

t=[int(n) for n in s.split(',')]

a=input("输入与上组数据等长的数据:")

b=[int(n) for n in s.split(',')]

for i in range(len(t)):

  t[i-1]=t[i-1]*b[i-1]

print("两个向量的内积为:",t)