python学习第二天:知识回顾
一.编程语言分类:
1、机器语言:
直接用二进制指令编写程序
优点:程序的运行速度快
缺点:
编写程序太复杂了
记忆困难
2、汇编语言:
用英文标签取代二进制指令去编写程序
3、高级语言:
用人类能理解的表达方式编写程序,需要经过翻译才能被计算机理解、运行
按照翻译方式的不同,又分为两种
1、编译型(c、go)
2、解释型(python,shell)
总结:
运行效率:机器语言>汇编语言>高级语言(编译型>解释型)
开发效率:机器语言<汇编语言<高级语言
二.解释器安装
windows
需要自己手动添加环境变量
mac:vim ~/.bash_profile
/etc/profile
卸载:
第 1 步,删除框架:
sudo rm -rf /Library/Frameworks/Python.framework/Versions/x.x
第 2步,删除应用目录:
sudo rm -rf "/Applications/Python x.x"
第 3 步,删除指向 Python 的连接:
cd /usr/local/bin/
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/x.x' | awk '{print $9}' | tr -d @ |xargs rm
第 4 步:清理环境变量
~/.bash_profile
/etc/profile
linux
注意问题:环境变量PATH
三.运行python的两种方式
1、交互式环境
输入代码立即得到结果
交互式环境下,敲完一条命令按下enter键马上能看到结果,调试程序方便。
程序无法永久保存,关掉cmd窗口数据就消失了。
举个栗子:
2、脚本的方式
python3 /Users/linhaifeng/PycharmProjects/s15/day02/d.txt
打开文本编辑器,在文本编辑器中写入一串字符
文本编辑器写的代码毫无意义,只是一堆字符,并且文件的后缀名没有影响。
我们可以使用pycharm这种集成开发环境写代码,可以发现语法错误等,会有一些小提示
举个栗子:
应该把.txt改为.py,这是python程序员约定俗称的规范,但是这个.py文件和.txt文件没有任何区别的。
运行python程序经历的三个步骤
1、先启动python解释器
2、python解释器就相当于一个文本编辑器先把d.txt的内容由硬盘读入内存
3、解释器解释执行刚刚读入内存的d.txt的内容,开始识别python语法
四.变量
1、什么是变量
量:记忆下事物的状态
变:事物的状态是可以发生变化的
2、为何要用变量
变量是为了控制计算机能够像人一样去记忆下事物的状态
并且记录的状态是可以发生变化的
变量其实是一种控制计算机把数据存起来的机制,存到内存中
名字 = egon
年龄 = 18
程序=数据+逻辑
3、如何用变量
①原则:先定义、后引用
# name = "egon"
# age = 18
# salary = 3.1
# height = 1.81
# weight = 73
#
# print(name)
# print(age)
# print(salary)
# print(height)
# print(weight)
# print(weight # 语法错误不能忍,打死他
# name="egon"
# name # 逻辑错误不可避免,应该尽量规避
②变量的三大组成部分:
变量名:相当于门牌号,用来访问/引用值
=:是把变量值的内存地址绑定给变量名
变量值:就是我们记录的状态,也就是程序中的数据
③变量名命名规则
#I: 变量名只能是 字母、数字或下划线的任意组合
# age_of_egon1=18
# age1=19
# age2=20
# _=13
# _a=14
#II. 变量名的第一个字符不能是数字
# 1age=18 # 非法
# 123=18 # 非法
#III:不用使用关键字
# print=123 # 非法
# print("hell world") # 非法
# ['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']
④变量名的命名原则:变量名应该见名知意
# age=19
# level=19
# print(age)
# print(level)
⑤变量名的命名风格:变量名推荐使用风格II
I:驼峰体
AgeOfEgonBaby=18
II:纯小写加下划线
age_of_egon_baby=18
⑥变量值有三大特征
I:id号,又称之为身份,id反映的是内存地址,id相同内存地址则相同
# age=18
# print(id(age))
id不同,代表内存空间不同,但是不同的内存空间中可以存放相同的值
Python 3.8.3 (v3.8.3:6f8c8320e9, May 13 2020, 16:29:34)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> x=257
>>> y=257
>>> id(x)
4494198128
>>> id(y)
4494198192
>>>
>>>
>>> m=256
>>> n=256
>>> id(m)
4490930816
>>> id(n)
4490930816
>>>
# x=25712312312312312312
# y=25712312312312312312
# print(id(x))
# print(id(y))
II:类型
# age=18
# salary=3.1
# name="egon"
# print(type(age))
# print(type(salary))
III:值本身
内存管理值垃圾回收机制
引用计数
age=18 # 18被引用1次
x=age # 18被引用了2次
print(age) # 输出18
print(x) # 输出18
x=19 # 18被引用计数减1
del age # 18被引用计数减1
# 当18的引用计数为0时,他就是垃圾,就会被gc回收
常量
约定俗成变量名全为大写表示常量,基于此,不可修改
python定义常量的方式:
AGE = 18
# AGE = 19
print(AGE)
go语言定义常量的方式:
const age int = 18
# 修改就会报错
注释:
多行注释一般用于文件的开头,解释说明整个文件.
‘’’ ‘’’ “”" “”"
单行注释可以用在开头,也可以用在末尾
#