字符串現在我有一個列表轉換列表到python3
>>> deints
[10, 10, 10, 50]
我想打印它作爲10.10.10.50
。我把它作爲
方法1
>>> print(str(deints[0])+'.'+str(deints[1])+'.'+str(deints[2])+'.'+str(deints[3]))
10.10.10.50
是否有我們可以acheivie這個其他方法嗎?
謝謝
字符串現在我有一個列表轉換列表到python3
>>> deints
[10, 10, 10, 50]
我想打印它作爲10.10.10.50
。我把它作爲
>>> print(str(deints[0])+'.'+str(deints[1])+'.'+str(deints[2])+'.'+str(deints[3]))
10.10.10.50
是否有我們可以acheivie這個其他方法嗎?
謝謝
你可以做到這一點:
print('.'.join(str(x) for x in deints))
謝謝。即使它是爲Python 2我明白我需要添加,使其運行在python 3 –
@Neapolitan [你錯了。](http://stackoverflow.com/a/9061024/1672429) –
將它們轉換爲字符串,然後加入它們。嘗試使用:
".".join([str(x) for x in x])
您可以使用字符串join
方法和對數據的列表,以字符串先轉換。
>>> '.'.join(map(str, deints))
'10.10.10.50'
join
取的字符串作爲一個分隔符並連接列表的每個元件之間的這種分隔符的內容。
顯然str.join()
是最短的路
'.'.join(map(str, deints))
,或者如果你不喜歡map()
使用列表理解
'.'.join([str(x) for x in deints])
你也可以做手工,使用*
轉換的deints
列表成系列函數參數
'{}.{}.{}.{}'.format(*deints)
或使用functools.reduce
和lambda
功能
reduce(lambda y, z: '{}.{}'.format(y, z), x)
所有返回
'10.10.10.50'
只是一個非join
解決方案。
>>> print(*deints, sep='.')
10.10.10.50
'打印( '' 加盟(圖(STR,deints)))轉換列表爲字符串]的' – styvane
可能的複製(http://stackoverflow.com/questions/2906092/converting -a-list-to-a-string) – PyNEwbie