day03
执行python程序的两种方式
第一种:交互式,在cmd中运行
优点:直接给出结果
缺点:无法保存
- jupyter 对这一种进行了封装
第二种:命令行式,通过cmd中输入python3文本
- txt文件可以,.py文件也可以,命令行可以识别任何文本文件
优点:可以保存
缺点:无法及时得到报错反馈
三个步骤
- 编写python文件
- 找到python文件路径,只是相当于一个文本编辑器(从硬盘读入内存),打开这个文件一瞬间没有语法这个概念,
print("hello world")
只是一串普通的字符 - 在内存运行并解释的时候才会有python语法这个概念,才会打印"hello world"
变量
什么是变量
变量:一种会变化的状态,这个状态可以描述世间万物,描述世间万物的状态
python中定义变量
name = 'demon'
# 变量名 赋值符号 变量值
print(name)
# 变量名做了什么事情:保存,接收了变量值
定义变量名的命名规范
- 变量名具有某种意义
- 变量名只能使用字母、数字、下划线组成,并且第一个字符不能是数字(然后也不能是下划线)
- 不能使用关键字作为变量名
- 关键字:具有某种意义
- 语法:print("demon")
两种变量名的命名规范
- 用下划线划分单词
demon_boy - 使用驼峰命名规则(不建议使用)
demonBoy
常量
固定不变的量
定义常量
*** python中没有严格意义上的常量,如果非要改,第二天就会被炒鱿鱼,一定要记住常量是约定俗成的,但是也能更改,但是不要更改 ***
常量要大写
注释是什么
不加注释
DEMON_HEIGHT = 150
DEMON_HEIGHT = DEMON_HEIGHT + 1
print(DEMON_HEIGHT)
加注释
DEMON_HEIGHT = 150
# DEMON_HEIGHT = DEMON_HEIGHT + 1
# print(DEMON_HEIGHT)
注释有什么用
取消python的语法,让# 后面的字符变为普通的字符
name = 'demon'
height = '175' # 身高
weight = '110'
# for 循环有什么用
for i in [1,2]:
print(i)
- 变量的注释的后面,类似for循环这样的结构注释写在第一行前面
多行注释
三单引号中间
'''
注释区域
'''
三双引号中间
"""
注释内容
"""
内存管理
变量:接受变量值,描述世间万物变化的状态
看python在内存中如何创建变量的
引用计数
引用计数是针对变量值的
name = 'demon' # 引用计数为1,这个变量值被引用多少次
name2 = name # 'demon'引用计数为2
del name # 引用计数为1
del name2 # 引用计数为0
垃圾回收机制
当变量值的引用计数为0时候,python会自动回收该变量值的内存占用空间
小整数池
[-5,256] 之间的证书由于经常用到,所以在python启动的那一刻,就会开辟一块内存空间放入这些证书,他不会被垃圾回收机制回收
时间段并且占用内存较小,会给你放在同一块内存中(一些IDE提供的封装)
定义变量的三个特征
数据类型
不同的数据会有不同的数据类型
为了定义不同的数据,我们python中定义了下述几个数据类型
数字类型
整型
作用:
描述ID号,银行卡号
定义方式:
height = 180
方法:
+ - * / % //
浮点型
作用:
定义薪资32.2k,商品价格$99.99
定义方式:
salary = 32.2
方法:
+ - * / % //
字符串
作用:
描述名字之类
定义方式:
name = '123123'
name = "sadfasdf"
name = '''
afdsa
sdfasdfsa
dsfasdfsd
'''
用法:字符串内置方法
列表
- 定义方式:[]内使用逗号分隔多个元素,元素可以为任何数据类型
- 方法: 索引取值
hobby = ['read','run','ball','fishing']
字典
-
定义方式:{}内以key:value的形式存放在{}内,并且以逗号切割,然后记住key,key一般为字符串并且有某种意义,value可以为任何数据类型
demon_info = { 'name':'demon', 'height':175, 'weight':120, 'hobby':['run','read'] }
-
方法:关键字取值
布尔类型
True or False
布尔类型一般不用于打印,定义变量,除了0、None、空、False都自带布尔值为True