【问题标题】:In python, when to use a square or round brackets? [duplicate]在python中,何时使用方括号或圆括号? [复制]
【发布时间】:2017-10-10 20:31:21
【问题描述】:

我是一名刚开始学习 python(第 3 版)的非程序员,我对我的代码中何时需要方括号和圆括号感到有些困惑。

有一般的经验法则吗?

【问题讨论】:

  • 方括号用于索引数组/列表/字典,圆括号用于函数调用。
  • 方括号和圆括号在不同的情况下意味着不同的东西,并且几乎不能互换。您应该从大多数通用教程网站了解具体用途
  • @username123 tuples 呢?
  • @MooingRawr 对于元组中的元素索引,还应该使用方括号
  • 我的意思是你的陈述并没有真正回答这个超级广泛的问题。比你给的还多

标签: python python-3.x


【解决方案1】:

它们是 Python syntax 的一部分,与使用单引号 (') 或双引号 (") 不同,它们几乎可以永远互换。

方括号和圆括号在不同情况下可能意味着很多不同的东西。举个例子,可能会认为以下两者是相同的:

a = [1,2,3]
a = (1,2,3)

a[0] 在这两种情况下都会给出1然而,第一个是创建list,而第二个是tuple。这些是不同的datatypes,不知道区别可能会导致困难。

以上只是方括号和圆括号不同的一个示例,但还有 manymany 其他。例如,在如下表达式中:

4 * ((12 + 6) / 9)

使用方括号会导致syntax error 因为Python 会认为您正在尝试创建嵌套的list

4 * [[12 + 6] / 9]

所以希望您可以从上面看到,这两种类型的括号在看起来相同的情况下会做完全不同的事情。对于一种类型何时做什么,没有真正的经验法则。一般来说,我猜方括号主要用于listsindexing 事物,而圆括号用于计算(就像在数学中一样)和functions 等。

希望对你有所帮助!

【讨论】:

    【解决方案2】:

    这些是语法的一部分:

    • 方括号[] 用于:

      • 定义列表:list = [ 1, 2, 3]
      • 数组索引:ages[3] = 29
      • 等等
    • () 圆括号用于:

      • 定义元组:retval = ( x, y, z )
      • 运算符优先级:result = (x + y) * z
      • 类/函数定义和调用:def func(x, y)func(3,7)
      • 等等

    【讨论】:

    • 说括号用于带括号的形式有点循环,不是吗?我意识到这是术语,但我认为这个答案如果不仅仅是链接的话会更好。
    【解决方案3】:

    很难简洁地回答,但我可以给你一些常见的例子。

    方括号定义列表:

    my_list = [1, 2, 3, 4]
    

    它们也用于索引列表。例如:

    print(my_list[1])
    

    返回2。 此外,它们经常用于索引字典,这些字典用大括号定义:

    my_dict = {5:'a', 6:'b', 7:'c'}
    

    字典的索引要求我输入“key”如下:

    print(my_dict[6])
    

    返回b

    使用圆括号调用函数。例如,如果我想在列表中添加一个元素,我可以调用 append() 函数:

    my_list.append(8)
    

    我刚刚将8 添加到我的列表中。你会注意到,当我调用 print 函数时,我也使用了弯括号。

    这绝不是全面的,但希望它能提供一个起点。

    【讨论】:

      猜你喜欢
      • 2011-01-12
      • 1970-01-01
      • 2014-04-23
      • 1970-01-01
      • 2014-01-11
      • 1970-01-01
      • 2021-01-11
      • 2021-10-12
      相关资源
      最近更新 更多