2017-08-17 36 views
0

我在使用Python中的uuid生成unique id時出現了一些錯誤。我正在解釋下面的錯誤。使用Python生成唯一標識時出錯

Error:

Exception Type:  TypeError 
Exception Value:  

coercing to Unicode: need string or buffer, UUID found 

我下面解釋我的代碼。

import uuid 
filename='+uuid.uuid4()+'.csv' 

在這裏,我需要把文件名稱作爲一些唯一的ID,但得到上述錯誤。請幫我解決這個錯誤。

+0

這不是真正的代碼。 –

+0

UUID具有多種表示形式。你想要哪一個? –

+0

其實我需要保留一個唯一的ID作爲文件名。 – subhra

回答

2

這個怎麼樣?

import uuid 

filename = str(uuuid.uuid4()) + ".csv" 

編輯:

要避免使用字符串連接:

import uuid 

filename = "%s.csv" % str(uuid.uuid4()) 
+1

我主張''%s.csv「%uuid.uuid4()',它相當於避免在字符串上使用'+'運算符,這總是一個好主意。 – MariusSiuram

+0

好點!我會約會我的答案,謝謝你! – RHSmith159

0

試試這個:

import uuid 
filename = '{}.csv'.format(uuid.uuid4().hex) 
+0

小心!你放棄了那些'()'(在'uuid4'之後)。另外:爲什麼使用'hex'?我並不是不喜歡它,但是你應該解釋爲什麼 - 或者提供兩種版本,並且說更喜歡它,如果是這樣的話。 – MariusSiuram

+0

謝謝。我使用了十六進制,因爲我發現這個表格更具可讀性....如果這是有道理的 –