簡體   English   中英

如何將列表轉換為字符串忽略python中的其他字符?

[英]how to convert list to string ignoring other characters in python?

我有一個像["['a', 'b', 'c', 'd']", '109']的列表,其中包含數組、列表中的數字。 如何將其轉換為字符串"abcd" 我已經完成out = ' '.join(row) ,它刪除了逗號。 我是 Python 的新手。

列表中的第一個元素是列表的字符串表示,而不是列表。 要使其成為列表,您可以像這樣評估它:

from ast import literal_eval

l = ["['a', 'b', 'c', 'd']", '109']
print ''.join(literal_eval(l[0]))

輸出:

abcd

你可以使用ast.literal_eval 但是,您最初確實不應該將數據轉換為這種格式,因此我建議您退后一步並解決根本問題。

>>> import ast
>>> ''.join(ast.literal_eval("['a', 'b', 'c', 'd']"))
'abcd'

這樣做的一個好方法是使用 re 模塊。

import re
out = ''

for character in list:
    if re.search('[A-Za-z]', character):
        out += character

假設temp = [["a","b","c","d"], 109]所以在 python shell 中運行代碼吹:

str = temp [0] // 將數組 ["a","b","c","d"] 分配給 str

''.join(str) // 在輸出中給你abcd作為字符串

不要忘記這個命令應該在 python shell 上運行!

暫無
暫無

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

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