课堂作业解答

1.输入一个自然数字字符串,然后输出各位数字之和。例如,输入字符串1234,输出10

def Sum1(a):
        sum=0
        for i in a:
            sum +=int(i)
        return sum
a= input("输入一个字符串:")
print("sum:",Sum1(a))

 

2.输入一个字符串,输出翻转后的(首尾交换)后的字符串,输入12345输出54321

def string_reverse2(string):
    return string[::-1]
string = input("输入一个字符串:")
print("交换后的字符串:",string_reverse1(string))

 

3.输入一个包含有若干整数的列表,输出列表的最大值。例如输入[1,2,3,4,5,888],输出888

def Max3(S):
    max = S[0]
    for i in S :
        if max <i:
            max =i
    print( max )
S=[1,2,3,4,888]
Max3(S)

 

4.输入一个包含若干整数的列表,把列表中所有整数转化为字符串,然后输出包含这些字符串的列表。例如输入[1,2,3,4,5,888],输出888

def lstStr4(lst):
    lst1=[str(i) for i in lst]
    print(lst1)
lst=[1,2,3,4,5,888]
lstStr4(lst)

 

5.输入一个包含若干数据的列表,输出该列表中等价于True的元素组成的列表。例如输入[1,2,0,None,False,'a'],输出[1,2,'a']

def true5(S): 
    a=[]
    for i in S :
        if i!=0 and i!='None' and i!='none' and i!='False' and i!='false':
            a.append(i)
    print(a)
S = [1,2,3,None,False,'a']
true5(S)

 

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

def average6(s): 
    sum = 0
    for i in s:
        sum += i
    avg=sum/len(s)
    print('%.3f'%avg)
s = 1,2,3
average6(s)

 

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

def des7(S): 
    for i in range(0,len(S)):
        for j in range(i,len(S)):
            if S[i] < S[j]:
                temp=S[i]
                S[i]=S[j]
                S[j]=temp
    print (S)
S = [1,2,5,3,8,3]
des7(S)

 

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

def digit8(S):
    m=[]
    n=0
    for i in S:
        m.append(len(str(i)))
        n+=1
    print(m)
S=[22,32,5,430,0,'as']
digit8(S)

 

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

def maxabs9(S):
    max=S[0]
    for i in S:
        if abs(max)<abs(i):
            max=i
    print(max)
S=[-22,32,15,-430,0]
maxabs9(S)

 

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

def product10(S):
    product=S[0]
    for i in S:
        product=product*i
    print(product)
S=[20,3,1,4,1]
product10(S)

 

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

def inner11(S1,S2):
    m=[]
    for i in range(0,len(S1)):
        m.append(S1[i]*S2[i])
    print(m)
x=[1,2,-3,10]
y=[3,-1,5,4]
inner11(x,y)

 

posted @ 2019-10-11 21:11  辣條先生  阅读(2486)  评论(0编辑  收藏  举报