测验6: 组合数据类型 (第6周) 程序题

中国大学MOOC -【Python语言程序设计 (第8期)】程序题

1.数字不同数之和
描述:获得用户输入的一个整数N,输出N中所出现不同数字的和。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬
例如:用户输入 123123123,其中所出现的不同数字为:1、2、3,这几个数字和为6。

参考代码:

n = input()
ss = set(n)
s = 0
for i in ss:
    s += eval(i)
print(s)

我的解答:

n=input()
d={}
for i in n:
    if i not in d:
        d[i]=1
    else:
        d[i]+=1
s=0
for i in d.keys():
    s+=eval(i)
print(s)

2.人名最多数统计
描述:编程模板中给出了一个字符串,其中包含了含有重复的人名,请直接输出出现最多的人名。

参考代码:

ls = s.split()
d = {}
for i in ls:
    d[i] = d.get(i, 1) + 1
max_name, max_cnt = "", 0
for k in d:
    if d[k] > max_cnt:
        max_name, max_cnt = k, d[k]
print(max_name)

我的答案:

s_new=s.split(" ")
#print(s_new)
d={}
for i in s_new:
    if i not in d:
        d[i]=1
    else:
        d[i]+=1

del d['\n']
del d['']

#print(d)

print(max(d,key=d.get))
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HerbertHu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值