zoukankan      html  css  js  c++  java
  • 关于python的十一道练习

    关于python的十一道练习

     

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

    1 def sums1(): #第一题
    2     strs=input('请输入一个自然数字符串:')
    3     num=0
    4     for i in range(0,len(strs)):
    5         num=num+int(strs[i:i+1])
    6     print('该字符串各位数字之和为:',num)

    2.编写程序,输入一个字符串,输出翻转(首尾交替)后的字符串。例如,输入字符串12345,输出54321.

     1 def turn2():  #第二题
     2     strs=input('请输入一个字符串:')
     3     strn=list(strs)
     4     m=strn.copy()
     5     n=len(strs)-1
     6     for i in strn:
     7         m[n]=i
     8         n=n-1
     9     strs=''.join(m) 
    10     print('该字符串的翻转为:',strs)
    • 该题要注意的是 ''.join() 为列表转字符串。

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

    1 def max3():  #第三题
    2     li = list(map(int,input('请输入一串整数,用空格隔开:').split()))
    3     maxn=li[0]
    4     for i in li :
    5         if maxn<i:maxn=i
    6     print('最大值为:',maxn)
    • 该题要注意的是因为输入的是字符串,要将其转化为列表,.split()是将输入的字符串用空格分隔开转为列表,map()函数将字符串列表中的每个字符串数字转化为int整型数值  。

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

    1 def lizstr4():  #第四题
    2     li = list(map(int,input('请输入一串整数,用空格隔开:').split()))
    3     print('转换为列表为:',[str(i) for i in li])
    • 该题要注意的是  str(i) for i in li 为将列表 li 中的所有元素都转换成字符串。

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

    1 def true5():  #第五题
    2     li = list(input('请输入一串字符串,用空格隔开:').split())
    3     a=[]
    4     for i in li :
    5         if i!=0 and i!='None' and i!='none' and i!='False' and i!='false':
    6             a.append(i)
    7     print('等价于True的元素为:',a)

    6.编写程序,输入一个包含若干自然数的列表,输出这些自然数的平均值。

    1 def average6():  #第六题
    2     li = list(map(int,input('请输入一串自然数,用空格隔开:').split()))
    3     sumn=0
    4     for i in li:
    5         sumn+=i
    6     avg=sumn/len(li)
    7     print('平均数为:%.3f'%avg)

    7.编写程序,输入一个包含若干自然数的列表,输出这些自然数降序排列的新列表。

    1 def des7():  #第七题
    2     li = list(map(int,input('请输入一串自然数,用空格隔开:').split()))
    3     for i in range(0,len(li)):
    4         for j in range(i,len(li)):
    5             if li[i] < li[j]:
    6                 temp=li[i]
    7                 li[i]=li[j]
    8                 li[j]=temp
    9     print('降序排列为:',li)

    8.编写程序,输入一个包含若干自然数的列表,输出一个新列表,新列表中每个元素为原列表中每个自然数的位数。例如,输入[1,888,99,23456],输出为[1,3,2,5]。

    1 def digit8():  #第八题
    2     li = list(map(int,input('请输入一串自然数,用空格隔开:').split()))
    3     m=[]
    4     n=0
    5     for i in li :
    6         m.append(len(str(i)))
    7         n+=1
    8     print('新列表为:',m)

    9.编写程序,输入一个包含若干实数的列表,输出其中绝对值最大的实数。例如,输入[-8,64,3.5,-89],输出-89。

    1 def maxabs9():  #第九题
    2     li = list(map(eval,input('请输入一串实数,用空格隔开:').split()))
    3     maxn=li[0]
    4     for i in li:
    5         if abs(maxn)<abs(i):
    6             maxn=i
    7     print('绝对值最大为:',maxn)
    • 该题要注意的是 abs() 为系统求数的绝对值函数。

    10.编写程序,输入一个包含若干整数的列表,输出这些整数的乘积。例如,输入[-2,3,4],输出-24。

    1 def product10():  #第十题
    2     li = list(map(eval,input('请输入一串整数,用空格隔开:').split()))
    3     product=1
    4     for i in li:
    5         product=product*i
    6     print('乘积为:',product)

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

    1 def inner11():  #第十一题
    2     li1 = list(map(eval,input('请输入第一串实数,用空格隔开:').split()))
    3     li2 = list(map(eval,input('请输入第二串实数,用空格隔开:').split()))
    4     m=[]
    5     for i in range(0,len(li1)):
    6         m.append(li1[i]*li2[i])
    7     print('内积为:',m)
  • 相关阅读:
    pstree---树状图的方式展现进程
    telint---切换当前正在运行的Linux系统的运行等级
    batch---系统不繁忙时执行任务
    crontab---定时任务
    runlevel---当前Linux系统的运行等级
    kill&&pkill&&killall---删除执行中的程序
    at&&atq&&atrm---定时任务
    fsck---于检查并且试图修复文件系统中的错误
    mkfs---创建Linux文件系统
    gitignore
  • 原文地址:https://www.cnblogs.com/mulin1999/p/11657861.html
Copyright © 2011-2022 走看看