在Python中反复使用计数器创建文件

时间:2016-12-02 14:10:21

标签: python text-files itertools

基本上我想要做的是编写一个python脚本,用于创建文件名为"file 1.txt" "file 2.txt" "file 3.txt"的count-number的文件。

我到目前为止:

import shutil, os, itertools


for i in itertools.count():
    file = open("FILE " + str(i) + ".txt", 'w+')
    print(i)
    time.sleep(1)

基本上我能做的就是数数,但文件创建是我的问题。 open()似乎不起作用。我如何创建这些文件,如何选择directorys来存储文件?

3 个答案:

答案 0 :(得分:3)

import shutil, os, itertools
import time

dirpath = 'c:\\usr\\'
for i in itertools.count():
    file = open(dirpath+"FILE " + str(i) + ".txt", 'w+')
    print(i)
    time.sleep(1)

这会奏效。你的代码运行正常。我刚刚添加了目录路径

答案 1 :(得分:3)

如果您使用 Python 3.4 + ,请尝试pathlib.Path(...).touch

import os
from pathlib import Path
import itertools

for i in itertools.count():
    filename = ''.join(['FILE', str(i), '.txt'])
    Path(os.path.join(dir, filename).touch()

Python2 中,我认为使用with statement会更好。

import os
import itertools

for i in itertools.count():
    filename = ''.join(['FILE', str(i), '.txt'])
    with open(os.path.join(dir, filename), 'w'):
        pass

答案 2 :(得分:1)

import os

number = 0
valid = False
while not valid:
    usrInput = raw_input("How much candy?: ")
    try:
        int(usrInput)
        valid = True
    except:
        print "NUMBER of candys!!"
        pass
 while number < int(usrInput):
    number +=1 
    createFile = open('P:/' + str(number) + '.txt', 'w+')
    createFile.write("whatever you want")
    createFile.close()

我希望这会有所帮助