建立一个字典,包含以下信息,输入姓名,通过字典查到该 人的信息,并且按照以下格式输出: Tom num:13456 addr:Foostreet45 姓名 电话号码 住址 Tom 13456 Foostreet45 Lily 45678 Boot123 Tony 67890 Kitty456
时间: 2023-05-20 10:04:24 浏览: 286
以下是一个建立字典并输出信息的 Python 代码示例:
```
# 建立字典
info_dict = {
'Tom': {'num': '13456', 'addr': 'Foostreet45'},
'Lily': {'num': '45678', 'addr': 'Boot123'},
'Tony': {'num': '67890', 'addr': 'Kitty456'}
}
# 输入姓名
name = input('请输入姓名:')
# 查找信息并输出
if name in info_dict:
info = info_dict[name]
print('{} num:{} addr:{}'.format(name, info['num'], info['addr']))
else:
print('未找到该人的信息')
```
如果您有其他编程类的问题,欢迎继续提问。
相关问题
用python实现学车费用的具体代码,题目要求如下:排序规则: 先按总费用从多到少排序,若总费用相同则按姓名的ASCII码序从小到大排序,若总费用相同而且姓名也相同则按编号(即输入时的顺序号,从1开始编)从小到大排序。输入格式: 测试数据有多组,处理到文件尾。每组测试数据先输入一个正整数n(n≤20),然后是n行输入,第i行先输入第i个人的姓名(长度不超过10个字符,且只包含大小写英文字母),然后再输入若干个整数(不超过10个),表示第i个人的各项费用,数据之间都以一个空格分隔,第i行输入的编号为i。输入数据和结果均在32位int型范围之内。 输出格式: 对于每组测试,在按描述中要求的排序规则进行排序后,按顺序逐行输出每个人费用情况,包括:费用排名(从1开始,费用相同则排名也相同)、编号、姓名、总费用。每行输出的数据之间留1个空格。特别说明:如果姓名相同排序为同一等级,钱数相同视为同等级别。以下为输出输出样例:输入样例: 3 Tom 2800 900 2000 500 600 Jack 3800 400 1500 300 Tom 6700 100 3 Tom 2800 400 100 Jack 3800 800 mary 3300。 输出样例: 1 1 Tom 6800 1 3 Tom 6800 3 2 Jack 6000 1 2 Jack 4600 2 1 Tom 3300 2 3 mary 3300 我想要达到的结果python关于不定程度数组的输入
以下是一个实现该题目要求的Python代码,其中使用了字典和元组来存储每个人的信息,并使用sorted函数进行排序:
```python
while True:
try:
n = int(input())
data = {}
for i in range(1, n+1):
line = input().split()
name = line[0]
fee = sum(map(int, line[1:]))
data[i] = (name, fee)
sorted_data = sorted(data.items(), key=lambda x: (-x[1][1], ord(x[1][0][0]), x[0]))
for i, (num, (name, fee)) in enumerate(sorted_data):
rank = i+1
print(f"{rank} {num} {name} {fee}")
except:
break
```
输入数据的格式为:第一行为一个正整数n,表示有n个人;接下来的n行每行表示一个人的信息,包括姓名和各项费用,数据之间用空格分隔。每个人的编号即为输入时的顺序号,从1开始编。
输出数据的格式为:每行表示一个人的费用情况,包括费用排名、编号、姓名和总费用,数据之间用空格分隔。其中费用排名从1开始,如果有多个人费用相同,则排名相同。如果姓名相同,则按ASCII码序从小到大排序。如果总费用相同而且姓名也相同,则按编号从小到大排序。
二、序列操作 1.创建序列,需要包含的元素为Jack、Halen、Join、Tom、David、Mia 2、将序列中按照降序顺序输出 3、将序列逆序排序输出 三、字典操作 1. 从键盘上输入,添加4个学生的信息(姓名、学号,性别、分数),并打印 2. 在每个学生的信息里添加身高信息(’height’:185) 3. 将第二个同学的分数修改为90分 4. 删除第三个同学的信息 四、循环语句 1、计算2+4+6+8-----100的值,以及1+2+3+4+…+…<200的最大值 五:控制语句 1、 输入一个正数,判断是正数,还是负数。
好的,我已经记录下来了。现在回答你的问题:
二、序列操作:
1. 创建序列,需要包含的元素为Jack、Halen、Join、Tom、David、Mia
```python
seq = ['Jack', 'Halen', 'Join', 'Tom', 'David', 'Mia']
```
2. 将序列中按照降序顺序输出
```python
seq.sort(reverse=True)
print(seq)
```
3. 将序列逆序排序输出
```python
seq.reverse()
print(seq)
```
三、字典操作:
1. 从键盘上输入,添加4个学生的信息(姓名、学号,性别、分数),并打印
```python
students = {}
for i in range(4):
name = input('请输入第{}个学生的姓名:'.format(i+1))
id = input('请输入第{}个学生的学号:'.format(i+1))
gender = input('请输入第{}个学生的性别:'.format(i+1))
score = input('请输入第{}个学生的分数:'.format(i+1))
students[name] = {'id': id, 'gender': gender, 'score': score}
print(students)
```
2. 在每个学生的信息里添加身高信息(’height’:185)
```python
for student in students:
students[student]['height'] = 185
print(students)
```
3. 将第二个同学的分数修改为90分
```python
students[list(students.keys())[1]]['score'] = 90
print(students)
```
4. 删除第三个同学的信息
```python
del students[list(students.keys())[2]]
print(students)
```
四、循环语句:
1. 计算2+4+6+8-----100的值,以及1+2+3+4+…+…<200的最大值
```python
sum1 = 0
for i in range(2, 101, 2):
sum1 += i
print('2+4+6+8-----100的值为:', sum1)
sum2 = 0
i = 1
while sum2 + i < 200:
sum2 += i
i += 1
print('1+2+3+4+…+…<200的最大值为:', sum2)
```
五、控制语句:
1. 输入一个正数,判断是正数,还是负数。
```python
num = float(input('请输入一个数字:'))
if num > 0:
print('这是一个正数')
elif num < 0:
print('这是一个负数')
else:
print('这是0')
```
阅读全文