所以我正在研究一个脚本,它会在运行时自动从 IRC XDCC 机器人下载某些文件。这些请求是异步的,并且可能有不同的数量,具体取决于配置文件,因此我想将文件句柄保存在哈希表或库中,以便可以根据文件发送者是谁以及他们发送的文件轻松引用它们(在触发事件期间读取)。Python 抱怨说SyntaxError: can't assign to function call
,所以我猜它不会像我想要的那样工作。
有更简单的方法吗?我在这里吠错树了吗?
谢谢!-罗素
所以我正在研究一个脚本,它会在运行时自动从 IRC XDCC 机器人下载某些文件。这些请求是异步的,并且可能有不同的数量,具体取决于配置文件,因此我想将文件句柄保存在哈希表或库中,以便可以根据文件发送者是谁以及他们发送的文件轻松引用它们(在触发事件期间读取)。Python 抱怨说SyntaxError: can't assign to function call
,所以我猜它不会像我想要的那样工作。
有更简单的方法吗?我在这里吠错树了吗?
谢谢!-罗素
问题是赋值语句的左边必须是一个左值,这是编译器知道有一个内存地址的东西,就像一个变量。在其他编程语言中也是如此。函数的返回值是rvalue或纯值。
这些是其他非法分配:
f() = 1
2 = 1
None = 0
[1,2] = []
请注意,以下语法在语法上是正确的,因为编译器知道如何计算要分配的内存位置的地址:
f().a = None
[1,2][0] = 0
创建一个空哈希:
files = {}
将项目添加到哈希中:
files["gin"] = open('ginpachi.txt','w')
files["ahq"] = open('ahq[DaBomb].txt','w')
像普通文件处理程序一样引用它们
files["gin"].close()
...
不幸的是,网络上没有任何关于此的信息(特别是哈希和文件句柄)。结案