• python2


    and or not

    变量

    命名规则

    字母,数字和_, 并且不能用数字开头

    空值

    None

    类型

    变量不必定义类型,直接定义。

    a=2
    a='ssss'
    a=True and False  #同一个变量可以被反复赋值,没有类型转换要求
    
    • 1
    • 2
    • 3

    常量

    全部大写的变量名表示常量

    PI=3.1415
    
    • 1

    但是python没有机制保证PI不会被改变,只是习惯用法,改了也可以

    除法

    / 浮点除

    10 / 3
    3.3333333333333335
    9 / 3
    3.0
    #//
     10 // 3
    3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    //地板除(向下取整)

    Attention

    python整数大小没有限制,浮点数也没有限制,超出一定范围,就表示为无限大

    字符串和编码

    unicode(all L) utf-8(可变长)

    python unicode

    单个字符编码 ord(),chr()

    ord()获取字符整数表示

    chr()整数转换成字符

    ord('A')
    65
    >>> ord('中')
    20013
    >>> chr(66)
    'B'
    >>> chr(25991)
    '文'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    python字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。若要在网络上传输,或者保存到磁盘上,就要把str变为以字节为单位的bytes

    bytes 类型的数据用带b前缀的单引号表示

     x=b'ABC'  #每个字符都只占用一个字节
    
    • 1

    编码解码

    str.encode(‘ascii’) # Unicode转bytes,纯英文可以ascii

    ‘中文’.encode(‘utf-8’) #含有中文的str可以用UTF-8编码为bytes

    如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:

    b'ABC'.decode('ascii')
    b'\xe4\xb8\xad\xff'.decode('utf-8')
    # errors='ignore'忽略错误的字节
    b'\xe4\xb8\xad\xff'.decode('utf-8', errors='ignore')
    
    • 1
    • 2
    • 3
    • 4
    image-20220610142747546

    len()计算str包含多少个字符,计算bytes包含多少个字节

    1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。

    为了避免乱码问题,应当始终坚持使用UTF-8编码对strbytes进行转换。


    由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    
    • 1
    • 2

    第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;

    第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。

    申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码:

    格式化字符串

    如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串:

    print('Age: %s. Gender:%s'%(25,'women'))  #Age: 25. Gender:women
    print('price:%% %s'% 7) #price:% 7
    
    • 1
    • 2

    f-string

    a=26
    aa='wo,m'
    print(f'替换{a:.2f}变量的字符串{aa}') #替换26.00变量的字符串wo,m
    #.2f保留两位小数点
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    搭载经纬恒润12V BMS的路特斯ELETRE开始量产交付
    设计模式学习笔记——抽象工厂模式
    [Rust学习:四] Vec和栈
    阿里内部Java岗位面试笔记“狂刷29天”成功斩获17个Offer
    聊聊工业界“AI算法创新”乱象
    4款AI 生成 PPT的工具,帮你赶上演示文稿的新趋势!
    PyCharm运行bash脚本
    【51单片机实验笔记】前篇(三) 模块功能封装汇总(持续更新)
    Windows卸载ninja流程
    软考 系统架构设计师系列知识点之软件质量属性(4)
  • 原文地址:https://blog.csdn.net/wtyttdy/article/details/125554411