我有以下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
函数两次(在返回之前再调用一次),我的注册函数将返回正确的列表(以及新添加的用户)。你知道吗
知道为什么会这样吗?你知道吗
我在调用这些函数时遇到了一个问题。由于两个模块都有一个单独的main来打印函数的结果(并且该main在模块文件中被显式调用),所以当我导入函数时,读卡器中的main被激活(这是我不知道python会做的事情,尤其是当我使用
from
关键字时)。你知道吗不管怎样,抱歉误报了。你知道吗
相关问题 更多 >
编程相关推荐