簡體   English   中英

如何在python中使用字典替換列表中的字符

[英]How do I replace characters in lists using dictionary in python

我想編寫一個使用字典以有效方式替換列表中某些字符的代碼。

如果我有:

key = {'a':'z','b':'y','c':'x'}
List = ['a','b','c']

我如何獲得輸出

ZYX

編輯以澄清。 我想要的輸出是真的

我的歉意。randomvariableorsomething = ['z','y','x']。

如果我在字典中沒有對應的鍵,[列表中x的[key [x]]是否可以使用?

使用getjoin

>>> ''.join(key.get(e,'') for e in List)
'zyx'

如果通過“替換”是指按照原始列表的元素順序將列表更改為dict的值,則可以執行以下操作:

>>> List[:]=[key.get(e,'') for e in List]
>>> List
['z', 'y', 'x']
key = {'a':'z','b':'y','c':'x'}
List = ['a','b','c']

print([key.get(x,"No_key") for x in List])

#### Output ####

['z', 'y', 'x']

如果您只想將它​​們打印為字符串,則:

print(*[key.get(x,"No_key") for x in List],sep="")

#### Output ####

zxy

以防萬一您需要不參加的解決方案。

ss = ''
def fun_str(x):
    global ss
    ss = ss + x
    return(ss)
print([fun_str(x) for x in List][-1])

#### Output ####

zxy

key和List都是python中可能與現有對象或方法( dict.keys()List對象)相沖突的單詞,因此為了最佳實踐,我分別將它們替換為k和lst:

[k[x] for x in lst]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM