Skip to main content
 首页 » 编程设计

python之使用嵌套的 for 循环和范围在 Python 3 中打印所需的显示

2025年05月04日13小虾米

我遇到了一个问题,要求我编写一个使用嵌套循环和范围函数打印出以下显示的函数:

SD1, SD2, SD3, SD4, SD5, SD6, 
HD1, HD2, HD3, HD4, HD4, HD6, HD7, HD8, HD9, HD10, HD11, 
CD1, CD2, CD3, CD4 

我知道如何使用 for 循环和范围来打印每一行,但我不确定如何使用嵌套循环来打印所需的显示。我们还没有学习字典,我们只是真正了解了如何使用列表。

我知道我可以执行以下操作来打印第一行,但使用嵌套循环来打印其余部分对我来说似乎不合逻辑。在给导师发电子邮件之前,我认为最好在这里寻求指点,以防我遗漏了什么。有什么建议吗?

for i in range(1, 7): 
    print(f'SD{i},', end=' ') 
print('') 
for i in range(1,12): 
    print(f'HD{i},' end=' ') 
print('') 
for i in range(1,5): 
    print(f'CD{i},' end=' ') 

请您参考如下方法:

您应该使用 OrderDict 来保存输入格式,这样您的插入顺序就会被保留。只需在您编写的代码上添加一个循环。就像下面的例子

from collections import OrderedDict 
type_of_string = OrderedDict({'SD': 7,'HD': 12,'CD': 5}) 
for key,value in type_of_string.items(): 
    for i in range(value): 
        print(key + str(i), end=', ') 
    print() 

编辑 仅使用列表:

type_of_string = [['SD', 7],['HD', 11],['CD', 5]] 
for a in type_of_string: 
    for i in range(a[1]): 
        print(a[0] + str(i), end=', ') 
    print()