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

一、题目:

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

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

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

4、输入一个包含若干数字的列表,输出其中绝对值最大的数字。

例如,输入[-8,64,3.5,-89],输出-89

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

例如,输入[-2,3,4],输出-24

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

 

二、代码展示:

# -*- coding: utf-8 -*-
'''
 @Author  : Jackma
 @Time    : 2020/10/10 22:15
 @File    : 2020_10_10.py
 @Software: PyCharm
 @URL     : www.jackrma.com
 @Copyright:博客所有权归本人和CSDN所有,如有转载请在显著位置给出博文
            链接和作者姓名,否则本人将付诸法律。
 @Version : 
'''
# 1、输入一个包含若干自然数的列表,输出这些自然数的平均值,结果保留3位小数
# 2、输入一个包含若干自然数的列表,输出这些自然数降序排列后的新列表
# 3、输入一个包含若干自然数的列表,输出一个新列表,新列表中的每个元素为原列表中每个自然数的位数。
#    例如,输入[1,888,99,23456],输出[1,3,2,5]
# 4、输入一个包含若干数字的列表,输出其中绝对值最大的数字。例如,输入[-8,64,3.5,-89],输出-89
# 5、输入一个包含若干整数的列表,输出这些整数的乘积。例如,输入[-2,3,4],输出-24
# 6、输入两个包含若干整数的等长列表,把这两个列表看作两个向量,输出这两个向量的内积

# 1
def average():
    '''
    输入一个包含若干自然数的列表,输出这些自然数的平均值,结果保留3位小数
    :return:
    '''
    s = eval(input("求平均,请输入自然数列表:"))  # 输入自然数的列表
    sum = 0
    for i in s:
        sum += i
    avg=sum/len(s)
    print('%.3f'%avg)

average()

# 2
def descending():
    '''
    输入一个包含若干自然数的列表,输出这些自然数降序排列后的新列表
    :return:
    '''
    s = eval(input("降序,请输入自然数列表:"))  # 输入自然数的列表
    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)

descending()

# 3
def digit():
    '''
    输入一个包含若干自然数的列表,输出一个新列表,新列表中的每个元素为原列表中每个自然数的位数
    :return:
    '''
    s = eval(input("取位数,请输入自然数列表:"))  # 输入自然数的列表
    m=[]
    n=0
    for i in s:
        m.append(len(str(i)))
        n+=1
    print(m)

digit()

# 4
def max_abs():
    '''
    输入一个包含若干数字的列表,输出其中绝对值最大的数字
    :return:
    '''
    s = eval(input("取绝对值最大值,请输入数字列表:"))  # 输入数字的列表
    max=s[0]
    for i in s:
        if abs(max)<abs(i):
            max=i
    print(max)

max_abs()

# 5
def product():
    '''
    输入一个包含若干整数的列表,输出这些整数的乘积
    :return:
    '''
    s = eval(input("取整数乘积,请输入整数列表:"))  # 输入整数列表
    p=s[0]
    for i in s:
        p=p*i
    p=int(p/s[0]) #前面for循环把列表第一位重复乘了一次,so除以列表第一位
    print(p)

product()

# 6
def inner_product():
    '''
    输入两个包含若干整数的等长列表,把这两个列表看作两个向量,输出这两个向量的内积
    :return:
    '''
    print("输入两个包含若干整数的等长列表,输出两内积")
    s1 = eval(input("请输入整数列表:"))
    s2 = eval(input("请输入与上等长的整数列表:"))
    m=[]
    for i in range(0,len(s1)):
        m.append(s1[i]*s2[i])
    print(m)

inner_product()

 

  • 26
    点赞
  • 132
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值