解析文件中以冒号分隔的文本

时间:2019-06-13 12:53:50

标签: python discord.py

n = 0

@bot.command()
async def check(ctx):

    global n

    ACC = open('test.data', 'r')
    # In test.data's detail:
    # 1st:2nd
    # 3rd:4th

    ACC1 = ACC.readlines()
    ACC2=str(ACC1).split()
    ACC3=str(ACC2).split(':')

    ctx.send('{}'.format(ACC3[n]))

    n+=1

我想输出为:

player: !check
bot : 1st
player: !check
bot : 2nd
player: !check
bot : 3rd

它输出了太多列表。

我暂时很高兴实现没有错误的字符串,但是它与我执行代码时的期望完全不同。我该怎么办?我也不认为有任何有用的答案。

1 个答案:

答案 0 :(得分:0)

ACC.readlines()已经返回文件中的行列表。因此,我们需要做的是在每一行上拆分:并将其展平。

checks = []
with open('test.data', 'r') as ACC:
    for line in ACC.readlines():
        checks.extend(line.split(':'))

ctx.send(checks[n])