0

所以我正在研究一个脚本,它会在运行时自动从 IRC XDCC 机器人下载某些文件。这些请求是异步的,并且可能有不同的数量,具体取决于配置文件,因此我想将文件句柄保存在哈希表或库中,以便可以根据文件发送者是谁以及他们发送的文件轻松引用它们(在触发事件期间读取)。Python 抱怨说SyntaxError: can't assign to function call,所以我猜它不会像我想要的那样工作。

有更简单的方法吗?我在这里吠错树了吗?

谢谢!-罗素

4

2 回答 2

0

问题是赋值语句的左边必须是一个左值,这是编译器知道有一个内存地址的东西,就像一个变量。在其他编程语言中也是如此。函数的返回值是rvalue值。

这些是其他非法分配:

f() = 1
2 = 1
None = 0
[1,2] = []

请注意,以下语法在语法上是正确的,因为编译器知道如何计算要分配的内存位置的地址:

f().a = None
[1,2][0] = 0
于 2011-03-15T19:21:17.307 回答
0

创建一个空哈希:

files = {}

将项目添加到哈希中:

files["gin"] = open('ginpachi.txt','w')
files["ahq"] = open('ahq[DaBomb].txt','w')

像普通文件处理程序一样引用它们

files["gin"].close()
...

不幸的是,网络上没有任何关于此的信息(特别是哈希和文件句柄)。结案

于 2011-03-15T19:33:12.217 回答