美文网首页
python3 语法注意

python3 语法注意

作者: sunnnnnnnnnny | 来源:发表于2020-12-22 11:12 被阅读0次

    p数字类型

    int (整数), 如 1, 只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
    bool (布尔), 如 True。
    float (浮点数), 如 1.23、3E-2
    complex (复数), 如 1 + 2j、 1.1 + 2.2j

    同一行显示多条语句

    import sys; x = 'runoob'; sys.stdout.write(x + '\n')
    

    类型转换

    int(x [,base])
    将x转换为一个整数
    float(x)
    将x转换到一个浮点数
    complex(real [,imag])
    创建一个复数
    str(x)
    将对象 x 转换为字符串
    
    repr(x)
    将对象 x 转换为表达式字符串
    eval(str)
    用来计算在字符串中的有效Python表达式,并返回一个对象
    
    tuple(s)
    将序列 s 转换为一个元组
    
    list(s)
    将序列 s 转换为一个列表
    
    set(s)
    转换为可变集合
    
    dict(d)
    创建一个字典。d 必须是一个 (key, value)元组序列。
    
    frozenset(s)
    转换为不可变集合
    
    chr(x)
    将一个整数转换为一个字符
    
    ord(x)
    将一个字符转换为它的整数值
    
    hex(x)
    将一个整数转换为一个十六进制字符串
    
    oct(x)
    将一个整数转换为一个八进制字符串
    

    不常用的操作符

    //  取整除 - 向下取接近商的整数
    
    
    
    a = 60            # 60 = 0011 1100 
    b = 13            # 13 = 0000 1101 
    c = 0
     
    c = a & b        # 12 = 0000 1100
    print ("1 - c 的值为:", c)
     
    c = a | b        # 61 = 0011 1101 
    print ("2 - c 的值为:", c)
     
    c = a ^ b        # 49 = 0011 0001
    print ("3 - c 的值为:", c)
     
    c = ~a           # -61 = 1100 0011
    print ("4 - c 的值为:", c)
     
    c = a << 2       # 240 = 1111 0000
    print ("5 - c 的值为:", c)
     
    c = a >> 2       # 15 = 0000 1111
    print ("6 - c 的值为:", c)
    
    
    in  如果在指定的序列中找到值返回 True,否则返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
    not in  如果在指定的序列中没有找到值返回 True,否则返回 False。   x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
    
    is  is 是判断两个标识符是不是引用自一个对象   x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
    is not  is not 是判断两个标识符是不是引用自不同对象   x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
    id(x)用于取x的内存地址
    

    转义

    \a  响铃  
    >>> print("\a")执行后电脑有响声。
    \b  退格(Backspace)   
    >>> print("Hello \b World!")
    Hello World!
    \000    空   
    >>> print("\000")
    
    >>> 
    \n  换行  
    >>> print("\n")
    
    
    >>>
    \v  纵向制表符   
    >>> print("Hello \v World!")
    Hello 
           World!
    >>>
    \t  横向制表符   
    >>> print("Hello \t World!")
    Hello      World!
    >>>
    \r  回车  
    >>> print("Hello\rWorld!")
    World!
    \f  换页  
    >>> print("Hello \f World!")
    Hello 
           World!
    >>> 
    \yyy    八进制数,y 代表 0~7 的字符,例如:\012 代表换行。 
    >>> print("\110\145\154\154\157\40\127\157\162\154\144\41")
    Hello World!
    \xyy    十六进制数,以 \x 开头,y 代表的字符,例如:\x0a 代表换行  
    >>> print("\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21")
    Hello World!
    \other  其它的字符以普通格式输出
    

    字符串

    python3中所有的字符串默认为Unicode字符串
    https://www.runoob.com/python3/python3-string.html

    yield

    列表推导式

    [3*x for x in vec]
    [[x, x**2] for x in vec]
    [3*x for x in vec if x > 3]
    [[row[i] for row in matrix] for i in range(4)]
    del a[2:4]
    

    集合运算

     a = set('abracadabra')
    >>> b = set('alacazam')
    >>> a                                  # a 中唯一的字母
    {'a', 'r', 'b', 'c', 'd'}
    >>> a - b                              # 在 a 中的字母,但不在 b 中
    {'r', 'd', 'b'}
    >>> a | b                              # 在 a 或 b 中的字母
    {'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
    >>> a & b                              # 在 a 和 b 中都有的字母
    {'a', 'c'}
    >>> a ^ b                              # 在 a 或 b 中的字母,但不同时在 a 和 b 中
    {'r', 'd', 'b', 'm', 'z', 'l'}
    

    字典

    >>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])
    {'sape': 4139, 'jack': 4098, 'guido': 4127}
    >>> {x: x**2 for x in (2, 4, 6)}
    {2: 4, 4: 16, 6: 36}
    >>> dict(sape=4139, guido=4127, jack=4098)
    {'sape': 4139, 'jack': 4098, 'guido': 4127}
    

    遍历技巧

    >>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}
    >>> for k, v in knights.items():
    ...     print(k, v)
    ...
    gallahad the pure
    robin the brave
    
    >>> for i, v in enumerate(['tic', 'tac', 'toe']):
    ...     print(i, v)
    ...
    0 tic
    1 tac
    2 toe
    
    
    >>> questions = ['name', 'quest', 'favorite color']
    >>> answers = ['lancelot', 'the holy grail', 'blue']
    >>> for q, a in zip(questions, answers):
    ...     print('What is your {0}?  It is {1}.'.format(q, a))
    ...
    What is your name?  It is lancelot.
    What is your quest?  It is the holy grail.
    What is your favorite color?  It is blue.
    

    name属性

    一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。
    

    open的模式

    image.png

    相关文章

      网友评论

          本文标题:python3 语法注意

          本文链接:https://www.haomeiwen.com/subject/mugjnktx.html