2015-06-02 46 views
0

我做了一個電子郵件機器人抓取Craigslist,並在一個項目符合我的查詢時給我發電子郵件。我現在處於最後階段,所有的工作都可以使用,但是我的電子郵件格式。在一個變量中列表輸出格式

我所擁有的是一個將Craigslist列表附加到列表的循環。在我的循環之外,我將List添加到我的電子郵件Def中作爲參數。什麼,我需要

例子:

list = ['item1', 'item2', 'item3'] 
print list 
['item1', 'item2', 'item3'] # I don't want it on a single line 
for i in list: 
    print i 
item1 
item2 
item3 
#I want a variable with the single line item format. 

我想放到一個變量而不是作爲列表中的單行格式。我的清單可能是1件或20件,取決於Craigslist發佈的內容。

任何幫助將是偉大的。

回答

0

隨着str.join您可以通過給定的字符串加入列表:

"\n".join(my_list) 

如果您需要更看中的格式比每行一個字符串,你應該看看加入的組合和str.format

PS:順便說一句,不要影響內部的「列表」,這是不好的做法。無論何時你想使用內建,它都會導致錯誤。

+0

編輯︰我得到它,謝謝這正是我所需要的 –

+0

第二個問題,我可以把它放在一個變量。如果我做「打印」\ n「.join(mylist)它可以工作,但是如果我做x =」\ n「.join(mylist)我想出'see \ ncat \ nrun' –

+0

您也需要打印該值當然,也就是'print'\ n'.join(my_list) – wonderb0lt

0

不完全清楚你在問什麼。根據我的理解,您希望在不同的行上打印列表項,但打印方式與打印列表時使用的樣式相同。

容器類的__str__方法通常採用包含的對象的__repr__方法,因此,如果您想要打印的幾行相同風格的項目,當你在一個行打印出來作爲,使用repr功能得到__repr__的結果。

>>> lst = ['item1', 'item2', 'item3'] 
>>> for i in lst: 
...  print repr(i) 
... 
'item1' 
'item2' 
'item3' 
+0

我很好,我想在一個變量中添加一個參數,我的電子郵件腳本需要1個參數,它是電子郵件的內容,它看起來像這樣:email(list)#with單行的格式......這是否有意義?我會發布我的代碼,但我在工作,它不能進入​​我的谷歌驅動器。 –