python - Python 生成一个大文本文件
问题描述
使用 Python 3.8,我正在尝试生成一个由随机字母和/或字母填充的大文本文件。这是不做任何事情的代码,我不太清楚为什么。
def generate_big_random_letters(filename,size):
import random
import string
chars = ''.join([random.choice(string.letters) for i in range(size)]) #1
with open(filename, 'w') as f:
f.write(chars)
pass
if __name__ == '__main__':
generate_big_random_letters("temp_big_letters.txt",1024*1024)
解决方案
使用string.ascii_letters
和string.digits
:
import random
import string
def generate_big_random_letters(filename, size):
chars = ''.join([random.choice(string.ascii_letters + string.digits) for i in range(size)]) # 1
with open(filename, 'w') as f:
f.write(chars)
if __name__ == '__main__':
generate_big_random_letters("temp_big_letters.txt", 1024 * 1024)
推荐阅读
- java - eclipse 在 ManagedBean 中看不到创建的类
- authentication - 使用多个域的 Kerberos 登录
- r - 使用双 for 循环访问 r 中数据帧中的元素
- java - JSTL JSP 包含 Servlet 使 JSP 空白
- ruby-on-rails - Ruby on Rails - 将用户和产品控制器链接在一起,不起作用
- ruby - 继承问题。NoMethodError:未定义的方法
- r - 单元格内带有部分粗体/斜体的可打印表格
- xamarin - Xamarin.iOS App 在设备上以调试模式运行时终止错误,在发布模式中退出但在模拟器中工作正常
- reactjs - 为什么我需要在 componentDidUpdate() 中带有 prevState 的 prevProps?
- c++ - 指针显式推导的C++14模板函数转发引用