簡體   English   中英

如何在python中按行讀取文本文件

[英]How to read a text file by line in python

我想從文本文件中隨機檢索並打印整行。

文本文件基本上是一個列表,因此該列表中的每個項目都需要搜索。

import random

a= random.random

prefix = ["CYBER-", "up-", "down-", "joy-"]

suprafix = ["with", "in", "by", "who", "thus", "what"]

suffix = ["boy", "girl", "bread", "hippy", "box", "christ"]

print (random.choice(prefix), random.choice(suprafix), random.choice(prefix), random.choice(suffix))

這是我的代碼,如果我只是手動將其輸入到列表中,但是我似乎找不到如何使用數組或索引來逐行捕獲文本並使用該代碼的代碼

使用Python的file.readLines()方法:

with open("file_name.txt") as f:
    prefix = f.readlines()

現在您應該可以遍歷列表prefix

我不確定我是否完全理解您的要求,但我會盡力提供幫助。

  • 如果您嘗試從文件中選擇隨機行,則可以使用open() ,然后使用readlines() ,然后使用random.choice()

     import random line = random.choice(open("file").readlines()) 
  • 如果您試圖從三個列表中的每個列表中選擇一個隨機元素,則可以使用random.choice()

     import random choices=[random.choice(i) for i in lists] 

    lists是從此處選擇的列表列表。

這些答案幫助我從文本文件列表中獲取內容。 如下面的代碼所示。 但是我有三個列表作為文本文件,我試圖隨機生成一個4字的消息,對於前3個字,從'prefix'和'suprafix'列表中選擇,對於第四個字,則選擇'suffix'文件,但是我想防止在打印它們時,從選擇random.choice函數已經選擇的單詞開始

 import random a= random.random prefix = open('prefix.txt','r').readlines() suprafix = open('suprafix.txt','r').readlines() suffix = open('suffix.txt','r').readlines() print (random.choice(prefix + suprafix), random.choice(prefix + suprafix), random.choice(prefix + suprafix), random.choice(suffix)) 

如您所見,它從這2個列表中隨機選擇3個詞

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM