如果我有这样的列表理解:
['' for x in myList]
有效地创建一个新列表,该列表中的每个元素都包含一个空字符串,我从不使用x
。有没有更干净的方式编写此代码,所以我不必声明未使用的x
变量?
_
是for循环和元组分配中被忽略成员的标准占位符名称,例如
['' for _ in myList]
[a+d for a, _, _, d, _ in fiveTuples]
顺便说一句,您的列表可以在没有列表理解的情况下编写(假设您要创建不可变成员(如字符串,整数等)的列表)。
[''] * len(myList)
问题内容: 在循环内部声明变量是否不好?在我看来,这样做,如下面的第一个代码块所示,将使用第二次的十倍的内存…由于在循环的每次迭代中都创建了一个新的字符串。这样对吗? 与 问题答案: 在循环内部声明变量是否不好? 一点也不!它将变量本地化到其使用点。 在我看来,如下面的第一个代码块所示,这样做将使用十倍于第二个内存的内存。 编译器可以优化内容以保持内存使用效率。仅供参考:如果您使用关键字告诉您变量
问题内容: ja块变量还是局部变量?我看到j的作用域只是直到for循环结束 问题答案: 局部变量在方法,构造函数或块中声明。 由此可见, 所有块变量都是局部变量。 按照块的定义 块是平衡括号之间的一组零个或多个语句,可以在允许单个语句的任何地方使用。 所以 无论在块内声明什么变量,范围都限于该块。 因此范围仅限于该块内部。那是循环。
从我的main开始,我将启动两个线程,称为producer和consumer。两者都包含循环。生产者循环是UDP服务器,因此不需要Hibernate。我的问题出在消费者方面。使用者循环将对象从链接队列中移除,并将其传递给一个函数进行进一步处理。根据研究,在循环中使用线程Hibernate不是一个好的实践,因为有时O/S在设定时间结束时不会释放。如果我删除线程Hibernate,当应用程序是理想的,
问题内容: 我正在学习Go,但感到有点烦人,在编译时,我不应该保留任何变量或包。 这确实让我放慢了脚步。例如,我只想声明一个新软件包并计划以后使用它,或者只是取消注释某些命令以进行测试。我总是会收到错误,需要对所有这些用法进行评论。 Go中有什么方法可以避免这种检查吗? 问题答案: 该错误将迫使您编写更好的代码,并确保使用声明或导入的所有内容。它使阅读他人编写的代码更加容易(您始终可以确保将使用所
有没有办法避免这种签到围棋?
如下所示,我要反转数组。但我的代码不管用。这是我的for循环。请看一下。这个for循环正确吗。代码如下。