变量和基础数据类型
执行python程序的两种形式
交互式(了解)
直接在cmd中运行。敲完一条命令按下enter键后立马能看到结果。调试程序方便。程序无法永久保存,关闭窗口即消失。
- jupyter对这一种方式进行了封装
命令行式
通过cmd中输入python3文本。
优点:可以保存
缺点:无法及时得到报错反馈
Python执行程序的三个阶段(掌握)
1.先启动python解释器
2.python3解释器相当于文本编辑器,将文本从硬盘写入内存
3.python3解释器解释执行文件代码。只要第三阶段才识别语法,才有python语法的概念,否则输入的只是一串普通的字符。
python集成开发环境
为什么用IDE(了解)
每次写代码都要新建文件、保存、选择存放地点;执行时还要切换命令行调用python解释器等麻烦的操作。此时IDE工具能大大提高开发效率。
pycharm(掌握)
注册完成后启动,首先
创建一个项目。(新建一个文件夹),用于存在代码。
创建目录。所有的代码要分类放在一个目录之下。
创建代码文件。
执行代码
jupyter(掌握)
jupyter是一个交互笔记本。他的本质是一个WEB应用程序,便于创建和共享文学化程序,支持实时代码,数学方程,可视化和markdown。用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。
命令行输入pip install jupyter安装jupyter
命令行切换到某个文件夹下输入命令jupyter-notebook,打开jupyter
jupyter下创建python文件
输入代码后shift+enter运行代码
变量
什么是变量?(掌握)
- 量:计算机通过记录我们的状态来识别我们呢,这就是量的概念
- 变:明天和今天的体重会有微小的差别,这就是变得概念
为什么要有变量?(掌握)
计算机运行的程序就是一系列的变化。
如何用变量?(掌握)
定义变量
name ='wuxi'
age = 23
gender ='male'
height = 178
weight = 140
变量的组成
从上面的变量可以看出变量的组成:
1.变量名:用来引用变量值。
2.赋值符号:赋值
3.变量值:记录变化的状态。但凡用变量值必须通过变量名。
事例:
name #直接写一个name,则报错,无意义
age = 23
height = 185
print(age) # 18
print(height) #185
变量名的命令规范
dsfsfaffaff='wuxi'
print(dsfsfaffaff) #'wuxi'
定义一个变量就是在记录现实世界中的状态,取,才是目的;存,不是目的。
所以变量命令应该满足一下三个规范:
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']
变量名的两个写作形式
驼峰体(不推荐使用)
AgeOfWuxi=23 #变量名组成的每一个英文首字母都大写
print(AgeOfWuxi) #23
下划线(推荐使用)
age_of_wuxi=23
print(age_of_wuxi) #23
常量(掌握)
常量就是不变的量。python中没有语法强制限定常量,也就是说python中的常量实质上是变量。
如果一定要求定义常量,变量名必须大写。
AGE_OF_WUXI=23
print(AGE_OF_WUXI)#23
注释(掌握)
如果代码不加注释,过几天自己都看不懂,更别说一起合作项目的同事了。
代码注释分为单行注释和多行注释。
- 单行注释用#;
示例:
单行注释
- 多行注释用三对单引号或双引号。多行注释可以注释多行的内容
示例:
'''
三单引号注释
'''
”“”
三双引号注释
"""
注释的原则
1.只需在自己觉得重要或者容易混淆的部分加注释
2.注释可用中文或者英文,切记不能用拼音
内存管理
变量存在什么地方去了
变量存在内存中
每定义一个变量,内存就会给这个变量开辟一个小空间。
python垃圾回收机制(掌握)
X=10。如果我们再加上一段代码X=11,那么内存就是给11另外一个空间,但由于之前X对应的是10,那么现在X断开与10的链接,只与11对应。那么10的内存空间就会被python清理。这就是python的垃圾回收机制。
引用计数
从上述的解释我们知道,只要某个变量这门牌号,就不是垃圾,反之则会被清理掉。我们对这个门牌号下个专业的解释就是引用计数
小整数池
为了避免因创建相同的值而重复申请内存空间所带来的效率问题,python解释器在启动时会创建出一个小整数吃,范围是[-5,256],该范围内的小整数对象永远不会回收。
定义变量的三个特征(掌握)
对于每一个变量,python都提供了这三种方法获取变量的三个特征。如下:
X=10
print(x)
print(id(x))
print(type(x))
变量比较
判断变量值是否相等用
name1='wuxi'
name2='zdq'
print(name1==name2)#错误
判断变量ID是否相同
X=11
Y=X
Z=11
print(x==y)#对
print(x is y)#对
print(x is z)#对,整数池的原因
X=257
Y=257
Print(X is y) #错误,因为X=257已被垃圾回收。
因此:ID相等的变量,值一定相等,指向同一个内存地址;值相等的变量,ID不一定相等(因为回收机制的因为)
数据类型基础
什么是数据类型?(掌握)
首先回顾一下变量:来记录世界的状态。创建计算机的目的就是让计算机和人一样能够识别万物。
-
数字类型
整型: 作用:表示人的年龄、各种号码、级别 定义: age=18#age=int(18) print(id(age)) #内存地址 print(type(age))#类型为整数型 print(age) #18 浮点型 作用:表示身高、体重、薪资 定义: salary=2.2#薪资是浮点型2.2 print(id(salary))#内存地址 print(type(salary))#数据类型为浮点型 print(salary)#2.2
-
字符串类型
作用:表示名字、爱好
定义:字符串就是一串被串起来的字符。在单引号、双引号或三引号内包裹的一串字符。注意:三引号内的字符可以换行,而单引号内的字符不行。
用法:字符串只能+、×和逻辑比较
-
列表
作用:当一个人有好几个爱好,这些爱好用空格相连。这时候用列表的形式存储个人爱好。
定义:[]内用都好分割开任意类型的值
hobby='read'
hobby_list=[hobby,'run','girl']
print(id(hobby_list))
print(type(hobby_list))
print(hobby_list)
用法:列表索引取值的方法:从0开始
hobby_list=['read','run','girl']
索引序号 0 1 2
取出第2个爱好
print(hobby_list[1])
-
字典
作用:用来存取多个值,按照key:value的方式存值,取得时候可以通过key而非索引去取值,key对value具有描述性作用。存放数据的种类各种各样并且数据较多的时候可以使用字典。
定义:在{}内用逗号分割开多个元素,每一个元素都是key:value的格式,其中value是任意格式的数据类型,key由于具有描述性的作用。所以key通常是字符串类型
用法:以来key取值,通过[key]即可获取key对应的value值
-
布尔型
作用:用于判断条件的结果
定义:python所有的数据类型都自带布尔值。只有0,none,空,flase的布尔值为false,其余为true
-