簡體   English   中英

如何在Python中將列表中的元素連接成一個變量?

[英]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.

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