0

如何在 JES 中编写一个(短)函数来从存储在特定文件中的所有引用中选择并返回一个随机引用。

 def readSaying():
    import random
    file=open('C:/computer course/assignment 5/assignment5sayings.txt',"rt")
    contents=file.read()
    file.close()
    random.seed()  
    print random.choice(contents)    

更新所以它看起来像通过添加 random.seed() 它正在读取我的文件,但它只是选择 1 个字母 - 我如何让它选择一个完整的引用,例如选择这些引用中的 1 个:

  1. “任何足够高级的错误都无法与功能区分开来” - Kulawiec
  2. “到 2020 年,将有一个全新的行业建立在记住 2000 年的基础上”——阿尔文·托夫勒
  3. “你可以带领一个男孩上大学,但你不能让他思考”——埃尔伯特·哈伯德
  4. “许多人宁愿死也不愿思考;事实上,大多数人都愿意”——伯特兰·罗素
4

1 回答 1

0

您可能需要播种随机数生成器。放在random.seed()你的前面random.choice(contents)

9.4。random - 生成伪随机数

random.seed([x])

初始化基本随机数生成器。可选参数 x 可以是任何可散列对象。如果省略 x 或 None,则使用当前系统时间;当前系统时间也用于在模块首次导入时初始化生成器。如果操作系统提供随机源,则使用它们而不是系统时间(有关可用性的详细信息,请参见 os.urandom() 函数)。

在 2.4 版更改:以前,不使用操作系统资源。

如果 x 不是 None 或 int 或 long,则使用 hash(x) 代替。如果 x 是 int 或 long,则直接使用 x。

于 2015-04-02T02:19:25.390 回答