我需要以集合的形式打印列表的元素。所以如果我有列表[1,2,3],那麼print語句需要返回{1,2,3}。如何以集合的格式打印列表。在Python3中
回答
這
s=[1,2,3]
print("{"+str(s)[1:-1]+"}")
這對我所需要的很好。對不起,我沒有發佈我已經做了什麼,但我完全失去了如何實現這一點,並沒有太多的事情要繼續下去。 – Ginjo 2014-09-20 15:39:07
這裏有一種方法(其中x
是你的列表):
>>> print("{" + ', '.join(str(item) for item in x) + "}")
{1, 2, 3}
我會用'repr(item)'而不是'str(item)'來完成格式匹配。對整數無關緊要,但對於其他的東西如字符串和浮點數也是如此。編輯:我沒有注意到這是Python3,忘記了我所說的有關浮動。儘管如此,仍然是計數字符 – 2014-09-19 21:20:21
如果你想具體的格式,你需要編寫自己。
這裏是set
一個子類實現該格式:
class Myset(set):
def __str__(self):
return '{'+','.join(repr(e) for e in sorted(self))+'}'
print Myset([1,2,3])
# {1,2,3}
或者,只是使用Python 3倍:
>>> print(set([1,2,3]))
{1, 2, 3}
的順序可能會有所不同,但是,如果沒有,我用的sorted
以上...
如果你想要一套,爲什麼不把列表變成一個集?隨着x
是你的清單:
>>> x=[1,2,3]
>>> x_set=set(x)
>>> print(x_set)
{1, 2, 3}
這是值得注意的是,套不排序,不能包含重複。 (但話又說回來什麼是印刷奔頭「喜歡」一組的好處,但不是呢?)
>>> x=[1,2,3,3,4]
>>> x_set=set(x)
>>> print(x_set)
{1, 2, 3, 4}
("{{{}}}".format(",".join(map(str,l))))
{1,2,3}
從list
擴展類並覆蓋__repr__
方法
class List(list):
def __repr__(self):
return "{%s}"%(",".join([str(each) for each in self]))
l = List()
l.append(1)
l.append(2)
print l
{1,2}
- 1. 在python3中打印多維列表
- 2. 如何使用java格式以表格格式打印對象列表
- 3. 如何打印列表的元素以特定的格式
- 4. 打印格式列表
- 5. Python3打印字符串格式化
- 6. 在Python中打印列表時控制打印格式
- 7. 如何在PHP中打印MongoDB集合?
- 8. 如何在SQL中以水平方式打印表格?
- 9. 如何在python中以表格形式打印字典數據
- 10. 如何打印格式排列列
- 11. 以表格格式打印字典?
- 12. Shell腳本以表格格式打印
- 13. 以表格格式打印控制檯列表
- 14. 如何在列表中打印列表?
- 15. 如何打印這種格式的表
- 16. 如何打印在vb6.0中的表格
- 17. 如何以JPG格式打印文檔
- 18. 如何在Qt中打印.xlsx格式?
- 19. 如何在列中打印列表?
- 20. JasperReports:以表格形式打印數據
- 21. 以表格形式打印STL地圖
- 22. 如何在角JS中以適當的格式打印JSON?
- 23. 用列表打印Python格式
- 24. 如何在python中打印表格?
- 25. 如何格式化要在列中打印的文本文件?
- 26. 以java格式打印行
- 27. 以PDF格式打印Highcharts
- 28. 如何合併2個數組並在表格中打印?
- 29. 如何適合在VBA中打印大型用戶表格
- 30. 如何格式化打印的雙打
待辦事項你的意思是你需要讓所有的列表看起來像集合,或者只是特別的一個?你試過什麼了? – jonrsharpe 2014-09-19 21:13:24
對不起,我應該更清楚。它必須爲任何名單做到這一點。 @msngupta得到了我無法想象的。 – Ginjo 2014-09-20 15:40:06