Python:无法读取fi中最后附加的行

2024-04-19 13:14:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下python代码:

#module1
from module2 import reader

def registration(userName, password, fileName, delimiter):
    with open(fileName, 'a') as file:
        file.write(userName + delimiter + password + '\n')
    return reader(fileName, delimiter)


#module2
def reader(fileName, delimiter):
    retVal = []
    with open(fileName, 'r') as file:
        for line in file:
            pair = line.split(delimiter)
            pair[1] = pair[1].strip()
            retVal.append(pair)
    return retVal

现在,我应该得到一个包含用户名和密码字符串的列表。读卡器确实读取先前写入的条目,但不读取刚刚通过注册函数添加的条目。如果我调用reader函数两次(在返回之前再调用一次),我的注册函数将返回正确的列表(以及新添加的用户)。你知道吗

知道为什么会这样吗?你知道吗


Tags: 函数returndefaswithusernamepasswordopen
1条回答
网友
1楼 · 发布于 2024-04-19 13:14:12

我在调用这些函数时遇到了一个问题。由于两个模块都有一个单独的main来打印函数的结果(并且该main在模块文件中被显式调用),所以当我导入函数时,读卡器中的main被激活(这是我不知道python会做的事情,尤其是当我使用from关键字时)。你知道吗

不管怎样,抱歉误报了。你知道吗

相关问题 更多 >