13

我刚看到以下

from flask_login import (LoginManager, login_required, login_user, 
                         current_user, logout_user, UserMixin)

这里

()在 import 语句中使用括号的目的是什么?

为什么有人要使用括号,而我们可以没有括号?

推荐吗?

4

3 回答 3

15

因此该语句可以换行到下一行。

见章节:2.1.5。显式行连接和 2.1.6。隐式连线

于 2013-04-06T19:43:50.947 回答
7

括号允许导入跨越多行。没有括号,你会得到一个语法错误。

如果导入都在一行上,则括号不会改变任何内容。

于 2013-04-06T19:43:57.773 回答
3

我想在我的经验中给你类似的例子:

我们能做的:

  a, b, c = (1 ,2 ,3) 

但是假设您的代码中的一行很长,并且您想将代码分成多行:

  a,
  b,
  c = (1, 2, 3) 

但是如果没有 LHS 上的括号你就不能这样做,它会给你错误NameError: name 'a' is not defined (编辑:你可以\在每一行上使用显式行加入)

你可以这样做:

   (a,
    b,
    c )= (1, 2, 3) 

而不是\我更喜欢()方法。

可能我没有完全回答你的问题,但我觉得我应该和你分享。

于 2013-04-06T19:51:07.050 回答