2.Python的基本语法知识
2.1 代码初尝试
Python中输出功能为print(输出的数据)
- 数据如果是数字,直接写
print(10)
- 数据如果是文本, 书写的时候需要加引号[单双引号都可以]输出,
print('hello world')
2.2编码规范
2.2.1 语句和缩进
语句: 完成逻辑的表达式称为语句
在编程语言中习惯语句结束的时候使用分号标记[;] 在Python中不建议写分号,建议一条语句独占一行
如果写代码的时候,一行中有多条语句,语句之间必须使用分号隔开
空格缩进:在Python中是体现代码块包含的意思 【有些代码需要满足一定的条件才能执行,是需要被包含在一个条件内】,不能随便乱增加空格缩进
2.2.2注释
程序员为了更好的解读代码,给代表添加的标注,这个标注是不被计算机当做程序识别的,或者是有些代码功能暂时不被启动,需要将代码进行注释
注释分为两种
- 单行注释, 格式是
#空格
- 多行注释,格式三对引号包含,可以是三对双引号,也可以是三对单引号【编码规范中推荐使用的是三对双引号】
2.3print
的使用
"""
项目名称: 02_print与注释.py
用户名: liuyanan
创建日期: 2023-9-20
flag标语:键盘敲烂 月薪过万!!!!
"""
# print的使用 按住ctrl键 点击功能名称
# print()
# print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
"""
1.value, ..., 代表的是print可以一次性输出多个数据,书写的时候,数据之间使用逗号隔开
2.sep=' ' 代表的是print一次性输出多个数据展示结果时,数据之间的分隔符默认为空格
也可以进行修改, 为了避免print将设定的分割符识别成输出的数据,设置分割符的时候格式为
print(数据1, 数据2, 数据3, sep=分隔符)
3.end='\n' 代表的是print输出内容的结束符,这个结束符默认是换行
一个知识点: 转义符\,可以将某些特定的符号转变其他的含义
比如符号n 加上\就变成换行符 \n
符号t \t代表的是tab键 称为制表符 【四个空格】
符号u 转义符会把u后面的内容当做unicode编码 想去获取其对应的文字
4e00 ===> 一
因为end默认是换行 所以每个print打印的结果都是独占一行的
也可以对end进行修改 修改格式类似于sep
print(数据1, 数据2, 数据3, sep=分隔符, end=结束符)
4.file=sys.stdout 代表的内容输出的目的地 默认是控制台上输出
5.flush 冲洗刷新的意思
"""
print(10)
print('hello world')
print(10, 20, 30, 40)
# 打印的时候 分隔符没有使用sep指定 会被识别成多个数据中的一个进行打印输出
print(10, 20, 30, 40, '+') # 10 20 30 40 +
# 想要展示内容使用+分割 必须使用sep指定
print(10, 20, 30, 40, sep='+') # 10+20+30+40
# 转义符
print('and') # and
print('a\nd')
"""
a
d
"""
print('heath') # heath
print('hea\th') # hea h
print('\u4e00') # 一
# 报错 报错的原因是 把sers当做了unicode编码 但是sers没有对应的文字
# print('\Users')
# 修改结束符
print(10, end='\t')
print(20) # 10 20
# 演示把内容输出到文件中
"""
目的:要在一个文件中写内容
如果使用文件系统图形化界面的形式 向文件中写入内容
1. 按照路径找到文件
2. 打开文件
3. 进行书写
4. 保存关闭
"""
# 如何使用Python代码按照路径打开文件
# open这个操作
# 格式: open(文件路径, 操作模式, encoding=文件存储编码形式)
"""
文件路径:
可以是绝对路径,也可以是相对路径
绝对路径 从盘开始一直到具体的文件
C:\WorkContent\各班代课\JYPython2304\day03_Python入门须知与运算符\笔记\语法笔记.md
相对路径:参照物
当前所在的路径使用.来表示
..表示的是上一级路径
举例:
现在路径是C:\WorkContent\各班代课\JYPython2304\day03_Python入门须知与运算符\代码\Day03
有一个路径 为 ./demo.py 这个文件就在现在的路径下
有一个路劲为 ../demo.py 这个文件在代码文件夹下
有一个路径为 ../../demo.py 这个文件在 day03_Python入门须知与运算符 这个文件夹下
有一个路径为 ../../笔记/demo.py
先回到 day03_Python入门须知与运算符这个文件夹 再进入到文件夹下的笔记文件夹中 有一个demo.py
操作模式
w -- write 代表的是写
如果路径对应的文件不存在 会先创建文件 再写入
如果文件存在,会清空文件 再写入
a -- append 代表的是写
如果路径对应的文件不存在 会先创建文件 再写入
如果文件存在,不会清空文件 在原本的基础上追加写
encoding 文件的编码形式
"""
# open的操作就相当于是将Python程序与文件建立联系
print('hello file', file=open('./hello.txt', 'w', encoding='utf-8'))
print('hello file', file=open('./hello1.txt', 'a', encoding='utf-8'))
2.4变量与数据类型
2.4.1变量
变量名词的定义来源于数学的,和数学中方程式的变量是一样的,只不过在计算机中定义格式不一样,变量也不仅仅数字,还可以是其他格式的数据
从数学角度回忆方程式
今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
解:设鸡有x只, 兔子有y只
x + y = 35 # x = 35 - y # x = 35 - 12
2x + 4y = 94 # 2(35 - y) + 4y = 94 # y = 12
使用某个标记名标记数据,这个标记名称为变量名
变量,从名字来进行判定,它标记的数据是可变化的,比如上面方程式中只要题目的需求发生一些变化,x和y持有的数据就会发生变化
在Python中定义变量的格式 变量名 = 数据值
, 这里的变量名起名的时候是要遵守一定的规则的,这个规则来源于标识符
2.4.2标识符
计算机中自定义的名字称为标识符,比如自定义项目名称/python文件名称/变量名/函数名/类名等等
规则:
-
包含数字、字母、下划线其中的符号
字母:注意Python的编码是
UTF-8
,这个是国际编码标准,收录的世界语言在内的,这里的字母包含各国语言文字,换句话说各国语言文字统称为字母 【英文、汉字、韩文、日文…】虽然是各国语言都能进行定义,但是按照编写代码的规范建议还是使用英文字母
-
不能以数字开头
-
不能使用关键字与保留字
关键字:在Python中已经具有特殊含义的单词
保留字:在Python已经被使用定义的名字 【根据你的定义覆盖其原本的含义 所以不建议使用 初次定义提示出来的不要使用了】
不同内容的命名规范:
- 项目名称在满足标识符规则的基础上,定义的时候建议采用大驼峰命名格式【每个单词首字母大写,比如
PythonProject
】 - python文件名称/变量名/函数名在满足标识符规则的基础上,定义的时候英文字母都是小写的,单词和单词之间使用下划线隔开 【比如
max_value
】 - 尽量做到见名知意
2.4.3数据类型
计算机中能处理的数据不仅仅只有数字,还可以处理文本/图形/音频/视频/网页等等各种各样的数据,再做处理的时候按照数据的特征进行了归类
在Python中基本的数据类型有:
-
整型(
int
)整数类型,该类型的数据值全部都是整数。Python可以处理任意大小的整数[包括负整数],写法和数学的格式是一样的,比如
10
,-20
,100
等等 -
浮点型(
float
)小数类型,之所以叫浮点类型,是因为数字可以使用科学计数法表示,小数点是可以移动的,比如
1.23*10^9
====1.23e9
====12.3e8
-
布尔类型(
bool
)布尔值与布尔代数的表达形式是一样的,布尔值只有两个
True
和False
,这个值一般是来表达式逻辑表达式运行结果的 -
字符串类型(
str
)表达的是文本数据,是有单引号或者双引号包含起来的任意文本
比如
'hello world'
,我的年龄是18
注意
'0' 和 0 不是同一个内容
, 前者是一个字符串,是一个文本;后者是一个数字,可以算术运算提这个原因是在ASCII码中看到字符0对应的十进制数据是48,这个字符0是
'0'
, 不是数字0在内存中存储的时候
'0' ===> 48 ===> 11 0000 0 ====> 0000000000
字符串是一个有序的不可变的容器型数据 字符串是有0个或者多个字符组合而成的,容器里面的数据元素就是字符 字符:长度为1的字符串就叫做字符 'a' 'b' ' ' '\n' '0' 当字符串是一对空引号称之为空字符串 【容器中什么符号都没有】 '' 空字符串不等价于空值None 把容器理解成箱子 'abc' 箱子中有数据 a 数据b 数据c '' 一个空箱子 None 就是连箱子都没有
-
空类型(
NoneType
)有一个值就是
None
,这个表示的是空值 【可以理解成空 什么都没有】不能理解成0 【0还是有意义的数字】
获取数据的类型方式 type(数据)
Python属于动态类型的语言,变量的类型是由值来决定的,变量可以赋予任意类型的值
还有一种语言是静态类型的,特点是定义变量的时候必须指明变量的类型,而且给变量赋值的时候只能赋予指明类型的值,比如Java
int age = 10;
age = 18;
2.4.4类型转换
在有些场景下 需要把数据设置为相同类型的才能进行计算,这个就需要类型转换
-
把数据转化为整型,格式
int(数据)
场景:
1. 对浮点数取整
- 把字符串转化为整型 【要求:字符串中的字符内容必须满足整数格式】
-
把数据转化为浮点型, 格式
float(数据)
场景就是字符串格式的小数转换成浮点类型【要求: 字符串中的字符内容必须满足数字格式】
-
把数据转化为布尔类型,格式
bool(数据)
可以把任意类型的数据转化为布尔类型,转换规则是
- 数字格式的数据,非0即为True
- 容器型数据,非空容器即为True
- None空值为False
这个规则要记住!!!! 因为后面的知识点中有逻辑判断,会使用到这个规则【把数据应用到逻辑中 结果为真还是假 应用的就是这个规则】