python - Linux 上 Python 中的随机数生成器

标签 python linux

这是我写的代码:

import os
import string
import random
def id_generator(size=8, chars=string.digits):
    return ''.join(random.choice(chars) for _ in range(size))
b="echo " + id_generator() + "> file.txt"
os.system(100*b)

现在的问题是,当我运行脚本时,它会返回一个随机数,而不是 100。 我希望当我打开 file.txt 时它必须是这样的:

123456
241721
126428

我该如何解决这个问题?

最佳答案

重定向会覆盖文件之前的内容。您需要 >>>,而不是 >

顺便说一句,这里没有必要使用过时的 os.system() 和重定向。你可以这样做:

with open('file.txt', 'w') as f:
    for _ in range(100):
       f.write(id_generator() + '\n')

这也更跨平台。

关于python - Linux 上 Python 中的随机数生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23791700/

相关文章:

python - pyparsing 的递归表达式

python - 更改 pyplot 子图中的直方图

linux - 我可以在 Linux 上用一条命令做多件事吗?

Python float溢出,float溢出会怎样?

python - 当实例分配给关系时,sqlalchemy before_flush 事件处理程序看不到外键的变化

linux - 在linux下创建文件

Linux 关机倒计时。 (用 while 制作)

c - 使用 c/GTK 截取特定窗口的屏幕截图

linux - 使用 find 命令 rsync 备份文件到远程服务器

python - ERROR : Could not build wheels for preshed, Thinc,blis,这是安装基于 pyproject.toml 的项目所必需的