• Python基础02-Python基本语法


    Python基本语法

    基本语法

    缩进

    if x > 0:
        print("正数")
    elif x = 0:
        print("0")
    else:
        print("负数")
    
    def add(x,y):
        return x+y
    

    缩进支持使用4个空格或tab进行缩进,由于在不同平台上tab长度不一样,建议统一使用4个空格缩进,不要混合使用空格和tab缩进。

    一行多条语句

    x=1; y=2; print(x+y)
    

    断行

    print("this line is too long,  
    so I break it to two lines")
    

    注释

    # 单行注释
    a = 1
    
    '''这是一段
    多行注释'''
    
    def add(x, y):
        """加法函数:这是docstring(函数说明)"""
        pass
    

    类型注释

    在函数中,可以对参数及返回值类型进行注释,示例如下:

    def add(x: int, y: int) -> int:
        return x+y
    

    注释只是一种声明,不影响运行,运行时也不会做类型检查。

    变量

    1. 变量类型(局部变量、全局变量、系统变量)
    2. 变量赋值
    • 多重赋值x=y=z=1
    • 多元赋值x,y = y,x
    1. 变量自增 x+=1x-=1(不支持x++, x--)

    Python3中没有常量

    运算符

    • 算术运算符:一般用于数字类型的计算
      • +:加,如 1+2,结果为3,在字符串中为连接,如'1' + '2',结果为'12',不同类型不能直接相加。
        • :减,如 3-1,结果2
      • :乘,如`23,结果为6
      • /:除:如 3/2,结果为1.5
      • //:地板除(只向下保留整数),如3//2,结果为1,3//-2,结果为-2
      • **:乘方,如4**2,结果为16
      • %: 取余,如果5%2,结果为3
    • 比较运算符:可用于两个相同类型对象的比较
      • ==:相等比较,如1+1==2,结果为True,{'a': 1, 'b': 2} = {'b': 1 , 'a': 1},结果为True
      • !=:比较是否不等,如1+1 != 3,结果为True,[1,2,3] != [2,1,3],结果为True
      • : 比较大于

      • <:比较小于
      • =: 比较大于等于

      • <=:比较小于等于
    • 身份运算符:用于判断是否同一对象
      • is:判断是同一对象,'=='只判断值是否相等,如True==1,is则判断是否同一对象(使用id()得出的内存地址相同),2>1 is True,结果为True,a=None;a is None`,结果为True
      • is not:判断非同一对象,如True is not 1结果为True。
    • 赋值运算符:用于将值赋给变量
      • =:赋值,如a = 1,将1赋给变量a,支持多重赋值,如a,b = 1,2a,b=[1,2](赋值时序列会自动解包变为1,2两个变量),结果为将1赋给a,将2赋给b
      • +=:变量自增,如a+=1相当于a=a+1
      • -=: 自减
      • *=:自乘
      • /=:自除
      • //=:自地板除
      • **=:自乘方
      • %=:自取余
    • 逻辑运算符:用于多个表达式的逻辑判断,有短路效应
      • and:并且,如1>2 and 1>0,都为真时返回最后一个结果的值。当第一个条件为假时不执行后面的判断,直接返回False,如果第一个条件为真时结果为第二个判断的结果(本例实际1>0不会执行)
      • or:或,如1>2 or 1>0,返回第一个为真的值或都无假时返回最后一个结果的值。当第一个条件为真是不执行后面的判断,直接返回True,否则返回第二个结果的值(本例1>0会执行)
      • not:非,如not 1>2,结果为True
    • 成员运算符:用于判断包含,常用判断字符串、列表、元祖、集合、字典中是否包含某元素(某键值)
      • in:是否在其中,如a in 'abcd',结果为True,或1 in [1,2,3],结果为True,或'name' in {'name': 'kevin', 'age': 12},结果为True。
      • not in:判断不包含,如a not in 'bcde'结果为True,从效率上由于not in会对比所有的元素,因此效率比使用in低
    • 位运算符:用于二进制或集合运算
      • &:按位与
      • |:按位或
      • ~:按位取反
      • ^:按位异或
      • <<:左移
      • :右移

    运算符优先级

    表达式与语句

    Python代码由表达式和语句组成
    表达式(Expression)是运算符(operator)和操作数(operand)所构成的序列,语句是让计算机执行特定操作的指示。

    表达式

    表达式一般结果为一个Python对象,如1+2, int('123')range(10)
    表达式一般可以包含算数运算符、比较运算符、逻辑运算符、成员运算符、位运算符,但不能包含赋值运算符

    由于表达式计算后返回一个Python对象,因此表达式可以当做待计算的变量一样使用,如用于assert断言语句后,print语句中,if语句中:

    print(2>1)
    assert 2>1
    if 2>1:
       ....
    

    表达式计算,如果有个字符串如'1+1',想要按Python表达式方式求值可以使用eval函数,eval('1+1'),结果为2。

    语句

    结果不是对象的代码则成为‘语句’。它们表示的是一个动作而不是生成或者返回一个值。
    常见的Python语句有:

    • 赋值语句
    • 调用
    • print:打印对象
    • if/elif/else
    • for/else、while/else
    • pass
    • break、continue
    • def
    • return、yield
    • global
    • raise
    • import、from ... import
  • 相关阅读:
    详测 Generics Collections TDictionary(2): ContainsKey、ContainsValue、AddOrSetValue、TryGetValue
    详测 Generics Collections TQueue (3): OnNotify、Extract
    详测 Generics Collections TDictionary(4): OnKeyNotify、OnValueNotify
    详测 Generics Collections TStack(1): Push、Pop、Peek 其他功能同 TQueue
    详测 Generics Collections TDictionary(1): Add、Items、Keys、Values、Remove
    测试字符串写入类: TStringWriter
    在IIS 6 中使用HTTP压缩(Compression)遇到的一个问题
    [好消息]博客园新服务器到货
    [公告]美化家园行动—博客园成立Skin设计小组
    [公告]星期天上午更换新服务器
  • 原文地址:https://www.cnblogs.com/superhin/p/12745902.html
Copyright © 2020-2023  润新知