[英]How can I concatenate elements from a lists into one variable in Python?
我目前正在嘗試采用一個單詞中每個字母的整數值,並將其表示為一個長的連續十進制值,而不是加在一起或用新行分隔。 我遇到的問題是我不確定如何將元素從列表中刪除。
def descAscii(words):
dec = []
for letters in words:
dec.append(ord(letters))
print dec
當我像這樣調用函數descAscii("hello")
將打印以下內容: [104, 101,108,108,111]
我想要的結果是104101108108111
感謝所有輸入。
str.join
是從列表構建字符串的正確方法。 您還可以通過使用生成器理解來跳過循環和中間列表的任何構建。
def descAscii(words):
print ''.join(str(ord(letter)) for letter in words)
如果要將輸出作為字符串,請使用
"".join(str(i) for i in dec)
如果您希望將輸出作為int
,則使用
In [83]: reduce(lambda a,b: a*1000 + b, dec)
Out[83]: 104101108108111
def descAscii(words):
dec = ""
for letters in words:
dec += str(ord(letters))
print dec
您可以只創建一個字符串,然后繼續附加它。
word = "hello"
>>> dec
'104101108108111'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.