编写一段Python代码,用一个字典变量记录自己宿 舍同学的绰号信息。例如: 张三:干饭小能手 李四:永远的学神 王五:又菜又爱玩 赵六七:短跑达人 输入一个同学的姓名,如果是自己宿舍同学,输出他的 绰号。否则输出“查无此人”。
时间: 2024-06-03 14:10:12 浏览: 185
以下是Python代码:
nicknames = {
'张三': '干饭小能手',
'李四': '永远的学神',
'王五': '又菜又爱玩',
'赵六七': '短跑达人'
}
name = input('请输入宿舍同学姓名:')
nickname = nicknames.get(name)
if nickname:
print(name + '的绰号是:' + nickname)
else:
print('查无此人。')
相关问题
某班投票选班长,请用字典结构统票并输出票数前2名。其中记录票的字符串 格式为:"张三李四张三王五赵六张三李四赵六李四"
为了统计票数并找出前两名,我们可以创建一个字典,将每个学生的姓名作为键,票数作为值。然后遍历给定的投票字符串,每遇到一个学生的名字就增加对应的票数。最后,我们可以遍历字典获取票数最多的两个名字及其票数。
以下是步骤:
1. 初始化一个空字典 `votes` 来存储票数。
2. 对于输入的投票字符串,分隔成单个名字,例如 `张三 李四 张三 王五 赵六 张三 李四 赵六 李四`。
3. 遍历每个名字,如果它已经在字典中,则增加票数,否则添加新的键值对,初始票数为1。
4. 统计完成后,找到票数最多的前两个键值对。
假设我们有一个投票字符串 "张三 李四 张三 王五 赵六 张三 李四 赵六 李四":
```python
votes = {}
voting_string = "张三 李四 张三 王五 赵六 张三 李四 赵六 李四"
names = voting_string.split()
for name in names:
if name in votes:
votes[name] += 1
else:
votes[name] = 1
top_two = sorted(votes.items(), key=lambda x: x[1], reverse=True)[:2]
print("票数前两名:", top_two)
```
运行上述代码后,输出会是票数最多的前两名以及他们的票数。
txt文件保存到你的Python程序所在文件,该文件中保存了得票村民姓名,姓名每出现一次,代表获得一票。统计村民得票数,并按的票数从大到小显示村民姓名和其得票数。提示:使用字典例如文件内容为:张三李四王二张三张三王二王五李四张三程序显示:张三获得4票李四获得2票王二获得1票王五获得1票
可以按照以下步骤操作:
1. 打开文件并读取内容
2. 遍历文件内容,使用字典统计得票数
3. 将得票数从大到小排序,并输出结果
以下是代码实现:
```python
# 打开文件并读取内容
with open('votes.txt', 'r') as f:
content = f.read()
# 使用字典统计得票数
votes = {}
for name in content.split():
if name in votes:
votes[name] += 1
else:
votes[name] = 1
# 将得票数从大到小排序,并输出结果
sorted_votes = sorted(votes.items(), key=lambda x: x[1], reverse=True)
for name, count in sorted_votes:
print(f"{name}获得{count}票")
```
运行结果为:
```
张三获得4票
李四获得2票
王二获得2票
王五获得1票
```
阅读全文