python_ex5组合数据类型

 

#基本数值运算
def getNum():       #获取用户不定长度的输入  输入一行,例如:1,2,3,4,5
    innum = []
    instr = input()
    innum = (eval(instr))
    return innum

def mean(numbers):  #计算平均值
    add_all = 0.0
    for item in numbers:
        add_all = add_all+item
    return add_all/len(numbers)
    
def dev(numbers, mean): #计算标准差
    sdev = 0.0
    for num in numbers:
        sdev = sdev + (num - mean)**2
    return pow(sdev / (len(numbers)-1), 0.5)

def median(numbers):    #计算中位数
    ls = sorted(numbers)     # 注意sorted不改变原来的列表,新建一个列表
    if len(ls)%2 == 0:
        return (ls[len(ls)//2]+ls[len(ls)//2-1])/2
    else:
        return ls[len(ls)//2]
    
n =  getNum() #主体函数
m =  mean(n)
print("平均值:{:.2f},标准差:{:.2f},中位数:{}".format(m,dev(n,m),median(n)))

 

def getText():
    txt = open("hamlet.txt", "r").read()
    txt = txt.lower()
    for ch in '!"#$%&()*+-,./:;<=>?@[\\]^_{}~|':
        txt = txt.replace(ch," ")
    return txt       
    
hamtxt = getText()
words = hamtxt.split()
count = {} #新建字典
for word in words:
    count[word] = count.get(word,0)+1           # 返回对应键值,没有返回0
ls = list(count.items())
ls = sorted(ls,key=lambda x:x[1],reverse=True)   #按变量第二维进行排序
for i in range(10):
    name,number = ls[i]
    print("{}".format(name))
s = '''双儿 洪七公 赵敏 赵敏 逍遥子 鳌拜 殷天正 金轮法王 乔峰 杨过 洪七公 郭靖 
       杨逍 鳌拜 殷天正 段誉 杨逍 慕容复 阿紫 慕容复 郭芙 乔峰 令狐冲 郭芙 
       金轮法王 小龙女 杨过 慕容复 梅超风 李莫愁 洪七公 张无忌 梅超风 杨逍 
       鳌拜 岳不群 黄药师 黄蓉 段誉 金轮法王 忽必烈 忽必烈 张三丰 乔峰 乔峰 
       阿紫 乔峰 金轮法王 袁冠南 张无忌 郭襄 黄蓉 李莫愁 赵敏 赵敏 郭芙 张三丰 
       乔峰 赵敏 梅超风 双儿 鳌拜 陈家洛 袁冠南 郭芙 郭芙 杨逍 赵敏 金轮法王 
       忽必烈 慕容复 张三丰 杨逍 令狐冲 黄药师 袁冠南 杨逍 完颜洪烈 殷天正 
       李莫愁 阿紫 逍遥子 乔峰 逍遥子 完颜洪烈 郭芙 杨逍 张无忌 杨过 慕容复 
       逍遥子 虚竹 双儿 乔峰 郭芙 黄蓉 李莫愁 陈家洛 杨过 忽必烈 鳌拜 王语嫣 
       洪七公 韦小宝 阿朱 梅超风 段誉 岳灵珊 完颜洪烈 乔峰 段誉 杨过 杨过 慕容复 
       黄蓉 杨过 阿紫 杨逍 张三丰 张三丰 赵敏 张三丰 杨逍 黄蓉 金轮法王 郭襄 
       张三丰 令狐冲 郭芙 韦小宝 黄药师 阿紫 韦小宝 金轮法王 杨逍 令狐冲 阿紫 
       洪七公 袁冠南 双儿 郭靖 鳌拜 谢逊 阿紫 郭襄 梅超风 张无忌 段誉 忽必烈 
       完颜洪烈 双儿 逍遥子 谢逊 完颜洪烈 殷天正 金轮法王 张三丰 双儿 郭襄 阿朱 
       郭襄 双儿 李莫愁 郭襄 忽必烈 金轮法王 张无忌 鳌拜 忽必烈 郭襄 令狐冲 
       谢逊 梅超风 殷天正 段誉 袁冠南 张三丰 王语嫣 阿紫 谢逊 杨过 郭靖 黄蓉 
       双儿 灭绝师太 段誉 张无忌 陈家洛 黄蓉 鳌拜 黄药师 逍遥子 忽必烈 赵敏 
       逍遥子 完颜洪烈 金轮法王 双儿 鳌拜 洪七公 郭芙 郭襄'''

name = set(s.split())   # 统计不重复人名
print(len(name))
cont = eval(input())
versedic = {}
if type(cont) != dict:
    print("输入错误")
else:
    for key,value in cont.items():    # 注意这种用法,返回两个变量,即键值对
        versedic[value] = key
    print(versedic)
    
import jieba
txt = open("沉默的羔羊.txt","r",encoding = "utf-8").read()
words = jieba.lcut(txt)
count = {}
for word in words:
    if len(word) < 2:
        continue
    else:
        count[word] = count.get(word,0)+1
ls = list(count.items())
ls.sort(key=lambda x:x[1],reverse =True)
name,num = ls[0]
print(name)

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值