如何循环字典中的列表?

2024-05-29 03:58:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图实现所示的预期输出,但我得到的是:

('A', 'B')Z
Z('A', 'B')
('C', 'B')Z
Z('C', 'B')

symbols1 = ('A','B')
symbols2 = ('C','D')

symbolsC = {symbols1:('A','B'),symbols2:('C','D')}

for symbol in symbolsC:

    print(str(symbol)+'Z')
    print('Z'+str(symbol))
 
 #desired final outout: AZ, BZ , ZC and ZD

Tags: inforzcsymbolbzfinalazprint
2条回答

嗨,我这样写是因为我不确定你为什么需要元组:

symbolsC = {"symbols1":('A','B'),"symbols2":('C','D')}
for sym2 in symbolsC["symbols1"]:
    print(str(sym2)+'Z')
for sym1 in symbolsC["symbols2"]:
    print('Z'+str(sym1))

但如果你需要使用元组,我会情不自禁地写下:

symbols1 = ('A','B')
symbols2 = ('C','D')

symbolsC = {symbols1:('A','B'),symbols2:('C','D')}

for symbol in symbolsC:
    for num in range(len(symbol)):
        print(str(symbol[num])+'Z')
        # print('Z'+str(symbol[num]))

也许你可以用if来解决问题, 如果我帮不上忙,我真的很抱歉

所需的输出与上述逻辑不匹配。但这将产生

阿兹 ZA BZ ZB CZ ZC DZ ZD

symbols1 = ('A', 'B')
symbols2 = ('C', 'D')

symbolsC = {symbols1: ('A', 'B'), symbols2: ('C', 'D')}

for symbol in symbolsC.values():
      for value in symbol:
            print(value + 'Z')
            print('Z' + value)

相关问题 更多 >

    热门问题