zoukankan      html  css  js  c++  java
  • python语法风格

    这里只给出其它文章里不适合出现部分语法风格。

    python有几种类型的复合语句:if、for、while、def、class、try/except、with/as等。这些复合类型的语句在编写时,要遵循python的语法风格:

    1. 冒号结尾复合语句的声明,如if expr:def f():
    2. 通过缩进数量决定代码块层次,同级别的代码块缩进数量相同
      • 也就是通过缩进来取代其它语言中的{}表示的代码块层次
    3. 代码体部分缩进,缩进数量随意,但同一层次的代码块缩进数量必须相同
    4. 如果代码体部分只有一个语句,可以直接放在声明行冒号的后面,如if expr: print("a")
    5. 可以使用空格或制表符进行缩进,但缩进同一层次时,不要混用空格或制表符
    6. 允许这些复合语句的声明行部分的表达式不使用括号包围,但使用括号也不会错,使用括号是为了确保表达式的优先级
    7. python中的括号类型(如小括号、中括号、大括号)都可以让代码换行书写,也就是续行。虽然也有效,但不建议。

    例如:

    if a > 3:
        print("hello world1")
        print("hello world2")
    else:
        print("hello world else")
    

    上面if和else位于同一层次的全局(文件)代码块,if的主分支两个语句位于同一层次的代码块(缩进相同)。在其他语言中,对等的写法大概如下:

    if (a > 3) {
        print("hello world1")
        print("hello world2")
    } else {
        print("hello world else")
    }
    

    python中,条件表达式部分加上括号也没问题:

    if (a>3):
        ...
    

    如果代码体只有单个语句,代码体可以直接放在冒号后面。例如:

    if a > 3:print("a")
    def f():print("a")
    class F:pass
    

    括号类型包围的内容,包括列表的中括号[]、集合或字典的大括号{}、元组或表达式或包围函数参数的小括号(),它们可以随意换行。

    例如:

    a = "aaa" + "bbb"
    a = ("aaa" + 
         "bbb")
    
    L = [11,22,33,44]
    L = [11,22,
        33,44]
    
    D = {"k1":"v1", "k2":"v2", "k3":"v3"}
    D = {"k1":"v1",
         "k2":"v2",
         "k3":"v3"}
    
    if a > 3: print(a)
    if (a >
        3):print(a)
    
  • 相关阅读:
    模拟赛QAQ
    复习计划
    luogu P1080 国王游戏
    [NOIP2012T3]开车旅行
    luogu P1967 货车运输
    同余方程组的扩展欧几里得解法
    luogu P1476 休息中的小呆
    GRYZY #13. 拼不出的数
    GRYZY- #10. 财富
    GRYZY #8. 公交车
  • 原文地址:https://www.cnblogs.com/f-ck-need-u/p/10126127.html
Copyright © 2011-2022 走看看