2012-11-14 13 views
12

如何在創建文件時將uuid.uuid4()值與文字連接起來?以下是不正確的,但應該說明什麼,我試圖做...使用uuid.uuid4()創建新文件

fo = open(uuid.uuid4() + ".txt", "wb") 

回答

30

你需要轉換的uuidstr

>>> import uuid 
>>> str(uuid.uuid4()) + ".txt" 
'13eb9327-f40e-4ef1-8020-1c36af1b4b70.txt' 
3

此版本不包括-字符串

fo = open(uuid.uuid4().hex + ".txt", "wb") 

這是經常使用上下文管理

打開該文件一個好主意3210
with open(uuid.uuid4().hex + ".txt", "wb") as fo: 
    # do stuff with fo 
    # fo will be closed automatically 

下面是一個循環

for item in data: 
    with open(uuid.uuid4().hex + ".txt", "wb") as fo: 
     fo.write(item) 
+0

我執行一個循環,我創建一個新文件(使用open命令一個例子吧,我寫信給它,然後我將其關閉,並重復這一過程。在這種情況下,上下文管理器是否合適? – c12

+1

@ c12,當然,只要把它放在循環中 –