如何从没有“|”的文件中选择一个或两个部分的单词(名称) python 中的分隔符
How to choose a one or two-parted word(name) from file without "|" separator in python
您好,我正在寻找解决我的问题的方法:
我有文本文件 countries-and-capitals.txt 带有示例词:
Poland | Warsaw
Sri Lanka | Colombo
我需要编写代码来随机选择国家或首都名称。
我的问题是我无法弄清楚如何在示例 斯里兰卡 中选择没有“|”分隔符且没有 科伦坡字.
我坚持
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
但这段代码选择整行 "\n"。
您可以使用列表解包以及 .split()
在一行中处理此问题:
import random
file = open("countries-and-capitals.txt")
[country, capital] = random.choice(file.readlines()).split(" | ")
file.close()
假设您想选择斯里兰卡:
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
word = word.split(" | ")
country = 'Sri Lanka'
if word[0] == country:
print("Sri Lanka's capital is: "+word[1].strip())
您可以使用 split("|") 删除 |
,使用 .strip()
删除 \n
。
输出:
如果你只想打印随机国家或首都,你可以应用另一个随机生成器:
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
word = word.split(" | ") #remove |
word[1] = word[1].strip() #remove \n
print(random.sample(word, 1)[0])
输出:
感谢Ka-Wa Yip BrokenBenchmark Devang Sanghani
和你们一起我找到了随机选择的解决方案:国家或首都
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
word = word.strip('\n').split(" | ")
word = random.choice(word[0:2])
print(word)
谢谢!
您好,我正在寻找解决我的问题的方法:
我有文本文件 countries-and-capitals.txt 带有示例词:
Poland | Warsaw
Sri Lanka | Colombo
我需要编写代码来随机选择国家或首都名称。
我的问题是我无法弄清楚如何在示例 斯里兰卡 中选择没有“|”分隔符且没有 科伦坡字.
我坚持
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
但这段代码选择整行 "\n"。
您可以使用列表解包以及 .split()
在一行中处理此问题:
import random
file = open("countries-and-capitals.txt")
[country, capital] = random.choice(file.readlines()).split(" | ")
file.close()
假设您想选择斯里兰卡:
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
word = word.split(" | ")
country = 'Sri Lanka'
if word[0] == country:
print("Sri Lanka's capital is: "+word[1].strip())
您可以使用 split("|") 删除 |
,使用 .strip()
删除 \n
。
输出:
如果你只想打印随机国家或首都,你可以应用另一个随机生成器:
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
word = word.split(" | ") #remove |
word[1] = word[1].strip() #remove \n
print(random.sample(word, 1)[0])
输出:
感谢Ka-Wa Yip BrokenBenchmark Devang Sanghani
和你们一起我找到了随机选择的解决方案:国家或首都
import random
word = random.choice(open("countries-and-capitals.txt").readlines())
word = word.strip('\n').split(" | ")
word = random.choice(word[0:2])
print(word)
谢谢!