[英]How do I convert a list into a string with spaces in Python?
如何將列表轉換為 Python 中以空格分隔的字符串?
例如,我想轉換這個列表:
my_list = ["how", "are", "you"]
進入字符串"how are you"
。
空格很重要。 我不想得到"howareyou"
。
" ".join(my_list)
你需要加入一個空格而不是一個空字符串......
我將把它作為替代方案,只是為了它,即使與字符串的" ".join(my_list)
相比它幾乎沒用。 對於非字符串(例如整數數組),這可能更好:
" ".join(str(item) for item in my_list)
對於非字符串list
我們也可以這樣做
" ".join(map(str, my_list))
因此,為了實現所需的輸出,我們首先應該知道該函數是如何工作的。
python 文檔中描述的join()
方法的語法如下:
string_name.join(iterable)
需要注意的事項:
iterable
元素連接的string
。 元素之間的分隔符是string_name
。iterable
中的任何非字符串值都會引發TypeError
現在,要添加空格,我們只需要將string_name
替換為" "
或' '
,它們都可以工作並放置我們想要連接的iterable
。
所以,我們的函數看起來像這樣:
' '.join(my_list)
但是,如果我們想在iterable
的元素之間添加特定數量的white spaces
怎么辦?
我們需要添加這個:
str(number*" ").join(iterable)
在這里, number
將是用戶輸入。
因此,例如如果number=4
。
然后, str(4*" ").join(my_list)
將是how are you
,因此在每個單詞之間有 4 個空格。
"".join([i for i in my_list])
這應該像你問的那樣工作!
你可以遍歷它來做到這一點
my_list = ['how', 'are', 'you']
my_string = " "
for a in my_list:
my_string = my_string + ' ' + a
print(my_string)
輸出是
how are you
你可以把它剝離得到
how are you
像這樣
my_list = ['how', 'are', 'you']
my_string = " "
for a in my_list:
my_string = my_string + ' ' + a
print(my_string.strip())
為什么不在列表本身的項目中添加一個空格,例如:
list = ["how ", "are ", "you "]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.