目录


  • 四、Python基础(1)



四、Python基础(1)

1.什么是变量?

一种变化的量,量是记录世界上的状态,变指得是这些状态是会变化的。

2.为什么有变量?

因为计算机程序的运行就是一系列状态的变化。

3.定义变量

在Python中定义变量:

name = 'magua'
age = 24
gender = 'man'
height = 168
weight = 250

4.变量的组成

三部分:

1.变量名:变量名用来引用变量值,但凡需要用变量值,都需要通过变量名。

2.赋值符号:赋值

3.变量值:存放数据,记录状态。

name #报错,无任何意义
age = 24
height = 168
print(age)
print(height)

24

168

5.变量的命名规范

切记,定义变量其实就是记录状态,存永远不是目的,取才是最终目的。

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']

6.变量名的两种风格

1.驼峰体

AgeOfMagua = 24
print(AgeOfMagua)

2.下划线(推荐使用)

age_of-magua = 24
print(age_of-magua)

7.常量

常量是不变的量,Python没有强制定义常量。常量名一般用大写。

AGE = 25
print(AGE)

8.变量存哪了?

x = 10

程序在Python解释器上运行,字符进入了内存,也就是变量进入了内存并存在那里。

9.Python垃圾回收机制

如果再加上一段代码x = 11,python就会替换掉之前的x = 10替换掉,x相当于门牌号,重新赋值会取代之前的数值,解释器会释放10的内存占用。

10.引用计数(门牌号)

x = 10 # 10引用计数加1为1
y = x  # 10引用计数加1为2
x = 11 # 10引用计数减1为1;11引用计数加1为1
del y  # 10引用计数减1为0,触发python垃圾回收机制,清理10的内存占用。

11.小整数池

Python实现int的时候有个小整数池。为了避免因创建相同的值而重复申请内存空间所带来的效率问题, Python解释器会在启动时创建出小整数池,范围是[-5,256],该范围内的小整数对象是全局解释器范围内被重复使用,永远不会被垃圾回收机制回收。

在pycharm中运行python程序时,pycharm出于对性能的考虑,会扩大小整数池的范围,其他的字符串等不可变类型也都包含在内一便采用相同的方式处理了,我们只需要记住这是一种优化机制,至于范围到底多大,无需细究。

12.变量的三个特征

(1)打印

x = 10
print(x)  #获取变量的变量值

10

(2)判断变量值是否相等

name1 = 'guapi'
name2 = 'magua'
print(name1 == name2)   #False
False

(3)判断变量id是否相等

x=10
y=x
z=10
print(x==y)
ture
print(x is y)
ture
print(x is z)
ture
x = 257
x = 257
print(x is z)
False             #整数池原因[-5,256],如果超出整数池,而且打印的时间较短,id可能会相等。

得出结论:id相等的变量,值一定相等,指向的是同一个内存地址;值相等的变量,id不一定相等。

13.花式赋值

(1)链式赋值(值相同的时候才能用)

a = 10
b = 10
c = 10
print(a,b,c)
10 10 10
a=b=c=10
print(a,b,c)
10 10 10

(2)交叉赋值

保证内存地址不变的情况下修改x和y

x=200
y=100
z=x
x=y
y=z
print('x:'x,'y:'y)
x:100
y:200
x=200
y=100
x,y = y,x
print('x:'x,'y:'y)
x:100
y:200

14.注释

方便以后调用代码时能看得懂。

代码注释分单行和多行注释,单行注释用#,多行注释可以用三对单/双引号,使用三引号

可以注释换行

#单行注释

'''
三单引号注释
三单引号注释
'''

''''''
三单引号注释
三单引号注释
''''''

注释原则:

1.不用全部加注释,对重要部分或不好理解部分加注释即可。

2.注释可以用中文或英文,但不要用拼音。