问题大概是:在当前目录下创建10个文件,文件名随机且不重复;文件内容是100个随机字符。
要求使用random模块下的choice()或者choices()函数
以下是我写的代码
import random
for i in range(10):
fn = ""
for j in range(10): #这里我把文件名定为十个字母组成的
fn = fn + random.choice("abcdefghijklmnopqrst")
fn = fn + ".txt"
with open(fn,"w") as file:
file.writelines(random.choices("abcdefghijklmnopqrst",k=100))
虽然这个代码可以运行成功,但是他只能创建一个文件并不是十个文件
但我到现在还没找出问题的所在,试了好久试不出来
求解答
#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import random
for j in range(10): # 这里我把文件名定为十个字母组成的
fn = random.choices("abcdefghijklmnopqrst", k=10)
with open("{}.txt".format("".join(fn)), "w") as file:
file.writelines(random.choices("abcdefghijklmnopqrst", k=100))
你的代码没错,注意缩进,with open语句应该在 i 的循环里。
以下一字未改:
import random
for i in range(10):
fn = ""
for j in range(10): #这里我把文件名定为十个字母组成的
fn = fn + random.choice("abcdefghijklmnopqrst")
fn = fn + ".txt"
with open(fn,"w") as file:
file.writelines(random.choices("abcdefghijklmnopqrst",k=100))