Python基础

python基础

变量

  • 变量要先定义后引用
  • 定义:变量名=变量值

变量的命名

  • 大前提:见名知意

  • 规范

    1. 变量名只能是字母,数字和下划线的任意组合

    2. 必须以字母开头

    3. 关键字不能作为变量名,

      ['and', 'as', 'assert', 'break', 'class', 'continue', 'def','del', 'elif','else', 'except', 'exec', 'finally', 'for', 'from', 'global','if', 'import', 'in', 'is','lambda', 'not','or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
      
  • 命名风格:

    1. 驼峰体
    2. 纯小写+下划线

变量名的三大特征

  • id(内存地址),type(变量类型)value(变量值)

内存机制

内存管理机制之垃圾回收机制GC机制

  1. 引用计数:变量值被变量名关联的次数,引用计数为〇,其占用的内存地址就应该被解释器的垃圾回收机制回收
  2. 分代回收:在经历多次扫描的情况下,都没有被回收的变量,GC机制就会认为,该变量为常用变量,GC会降低对其扫描的评率
  3. 标记/清除:该方法主要针对循环引用造成的内存泄漏问题;核心算法:如果一个值没有关联任何一条以直接引用作为出发点的引用,那么该值就会被标记下来,并且清除

小整数池

  • python解释器在启动时会事先将一些常用的整数值在内存中申请好内存空间

常量

  • 在整个程序运行时不变的量,通常用大写来命名

基本数据类型

  • 整型 int

    age=18
    
  • 浮点型 float

    height=175.5
    
  • 字符串类型 str

    name="郑诗楠"
    
  • 列表类型 list

    list1 = [1,2,3,"name"]
    
  • 字典类型 dict

    dic={"k1":"v1","k2":1}
    
  • 布尔类型 bool(有显式和隐式区分)

    tag = True
    

基本运算符

  • 算数运算:+(加)-(减) *(乘) /(除) //(整除) %(取余) **(次幂)

  • 比较运算:>(大于) <(小于) !=(不等于) ==(等于) <=(小于等于)

  • 赋值运算符:=

    (1)增量赋值 += -= *= /=
    (2) 链式赋值
        x=10
        y=x
        等同于:y=x=10
    (3)交叉赋值
        x=100
        y=10
        x,y=y,x
        结果是xy的值互换
    (4)解压赋值
        s=[1,2,3]
        s1,s2,s3=s
        结果:s1=1,s2=2,s3=3
        s1,*_=s
        结果:s1=1,_=[2,3]
    

逻辑运算符

  • not:(非)取反
  • and:(且)连接左右两个条件,必须两个都为真才,结果才是真
  • or:(或)连接左右两个条件,有一个为真,结果就为真

if判断

# 语法
 if 条件1:
    代码2
elif 条件2:
	代码2
 ......
else:
	代码

while循环

while 条件:
    代码

结束循环的两种方式:

  1. 条件为假:不会终止本次循环,循环将在下一次条件判断时终止
  2. break:直接终止本层的while循环,while循环里后面的代码不在运行,不影响其他层的代码循环

else:当循环正常结束时(不是被break干掉),将执行else里的代码

 while 条件:
    代码
 else:
    代码

continue:跳过本次循环,进入下一次循环,不是终止循环

for循环

for 变量名 in 可迭代对象:
    代码

for循环也有else,break和continue,用法与while循环相同

字典,列表都是可迭对象

可变与不可不类型

  • 可变类型:值变了,内存地址不变。字典,列表,集合
  • 不可变类型:值变了,内存地址也跟着变。整型浮点型,字符串,元组
posted @ 2021-07-02 19:45  zheng-sn  阅读(53)  评论(0)    收藏  举报