目录
2019/07/29 学习整理
Python基础
变量
一、什么是变量?
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。变量从字面意思可以理解成:是变化的量。
- 量:记录现实世界中的状态,让计算机能够像人一样去识别世间万物。
- 变:现实世界中的状态是会发生改变的。
二、为什么要有变量?
变量是一切代码的基础,作为程序寻找内存中所存放的数据时的一个标签,它的作用是告诉程序,你应该去内存中的哪个地方寻找接下来要用到的数据
三、定义变量
变量是需要定义并且赋值的。
- 格式:
标识符(即该变量的名字) + 赋值符(即等号= ) + 值
- 示例: a = 8
如上式,定义了一个变量,名字叫做“a”,储存的数据是8;也可以理解为,一个叫做“a”的变量被赋值为8 - 定义变量的时候必须给变量赋值,即变量的初始值。
- 在程序中可随时修改变量的值,而Python将始终记录变量的最新值。
- 在Python3中,在定义变量时不需要指定类型,可以根据等号后边的值推导出类型
四、变量的命名规范
三种方式:
1.大驼峰命名法。 例:myName
2.小驼峰命名法。 例:MyName
3.下划线命名法。 例:my_name
遵循规则:
- 变量名只能包含字母、数字和下划线。
- 变量名可以字母或下划线开头,但不能以数字开头.
- 例如,可将变量命名为
message_1
,但不能将其命名为1_message
。
- 变量名不能包含空格,但可使用下划线来分隔其中的单词。
- 例如,变量名
greeting_message
可行,但变量名greeting message
会引发错误。
- 例如,变量名
- 不要将Python关键字和函数名用作变量名
- 即不要使用Python保留用于特殊用途的单词,如print。
- 变量名应既简短又具有描述性。
- 例,
name
比n
好,student_name
比s_n
好,name_length
比length_of_persons_name
好。 - 慎用小写字母l和大写字母O,因给他们可能被人错看成数字1和0;
常量
变量是变化的量,常量则是不变的量。python中没有使用语法强制定义常量,也就是说,python中定义常量本质上就是变量。如果非要定义常量,变量名必须全大写。
Python的执行方式
交互式(Jupyter)
交互式环境下,敲完一条命令按下enter键马上能看到结果,调试程序方便。程序无法永久保存,关掉cmd窗口数据就消失了
命令行式(Pycharm)
打开文本编辑器,在文本编辑器中写入一串字符。文本编辑器写的代码毫无意义,只是一堆字符,并且文件的后缀名没有影响。由于python语言是解释型语言,我们直接使用python打开文件,python会读一行翻译一行,并且这个文件是永久保存在硬盘中的。
Python变量内存管理
一、变量存在哪里
变量是存放在内存当中的。
二、Python垃圾回收机制
2.1 引用计数
Python垃圾回收主要以引用计数为主,分代回收为辅。引用计数法的原理是每个对象维护一个ob_ref,用来记录当前对象被引用的次数,也就是来追踪到底有多少引用指向了这个对象,当发生以下四种情况的时候,该对象的引用计数器+1,当该对象的引用计数器为0,则清空改对象的内存
三、最小整数池
Python实现int的时候有个小整数池。为了避免因创建相同的值而重复申请内存空间所带来的效率问题, Python解释器会在启动时创建出小整数池,范围是[-5,256],该范围内的小整数对象是全局解释器范围内被重复使用,永远不会被垃圾回收机制回收。
变量的三个特征
- 变量的值(value)
- 数据类型(type)
- 地址(id)
a = 5
print(a) # 打印变量的值
# 5
print(type(a)) # 打印变量的数据类型
# <class 'int'>
print(id(a)) # 打印变量的地址
# 140711551603648
赋值
一、链式赋值
a = 10
b = 10
c = 10
d = 10
print(f'a:{a}, b:{b}, c:{c}, d:{d}')
# a:10, b:10, c:10, d:10
a = b = c = d = 10
print(f'a:{a}, b:{b}, c:{c}, d:{d}')
# a:10, b:10, c:10, d:10
二、交叉赋值
x = 100
y = 200
temp = x
x = y
y = temp
print(f'x:{x}')
print(f'y:{y}')
# x:200
# y:100
x, y = y, x
print(f'x:{x}')
print(f'y:{y}')
# x:200
# y:100
注释
注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提高程序代码的可读性。
代码注释分单行和多行注释,单行注释用#,多行注释可以用三对单/双引号,使用三引号注释可以换行。
# 单行注释
'''
三单引号注释
三单引号注释
'''
"""
三双引号多行注释
三双引号多行注释
"""
添加注释的原则
1.不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可
2.注释可以用中文或英文,但不要用拼音