python基础语法
python基础学习
一、计算机组成
计算机组成分为硬件系统和软件系统
1、硬件系统分为中央处理器、存储器、输入设备、输出设备
中央处理器:CPU
存储器:内存储器(内存)、外存储器(硬盘、U盘)
输入设备:键盘、鼠标、扫描仪
输出设备:显示器、打印机
2、软件系统分为系统软件(操作系统)和应用软件(app)
二、python基础学习路线
1.python入门
1.环境搭建 2.变量,3.输出,4.输入,5.数据类型
2.流程控制
1.条件语句,2.循环
3.数据序列
1.字符串,2.列表,3.字典,4.元组,5.集合
4.函数
1.参数,2.返回值,3.递归,4.lambda表达式
5.文件操作
1.打开和操作,2.读取和写入
6.面向对象
1.类和对象,2.继承,3.面向对象高级
7.模块、包、异常
8.综合实战
三、解释器的作用和分类
1、解释器的作用
1、python解释器作用:运行文件
2、python解释器种类:
a、CPython,C语言开发的解释器【官方】,应用广泛的解释器。(课程中使用CPython)
b、IPython,基于CPython的一种交互式解释器。
c、其他解释器:
PyPy,基于Python语言开发的解释器;
Jython,运行在Java平台的解释器,直接把Python代码编译成Java字节码执行。
IronPython,运行在微软。Net平台尚的python解释器,可以直接把python代码编译成.Net的字节码。
四、变量和数据类型
1.注释
1、注释的作用
通过用自己熟悉的语言,在程序中对某些代码进行标注说明,能够大大增强程序的可读性。
2、注释的分类及语法
a、单行注释:只能注释一行内容,语法为 #注释内容
b、多行注释:可以注释多行内容,语法为
"""""“第一行注释”"""""或’’‘第一行注释’’'
2.变量的作用
a.变量
1、程序中,数据都是临时存储在内存中,为了更快速的查找或使用这个数据,通常我们把这个数据在内存中存储之后定义一个名称,这个名称就是变量。
2、变量就是一个存储数据的时候把当前数据所在的内存地址的名字。
b.定义变量
1、变量=值(“=‘是赋值)
变量名自定义,要满足标识符命名规则。
2.1标识符
标识符命名规则是Python中定义各种名字的时候的统一规范,具体如下:
a、由数字、字母、下划线组成
b、不能数字开头
c、不能使用内置关键字(Flase None True and as assert break class continue def del elif else except finally for from global
if import in is lamba nonlocal not or pass raise return try while with yield)
d、严格区分大小写
2.2 命名习惯
1、见名知义
2、大驼峰:即每个单词首字母都大写,例如:MyName
3、小托峰:第二个(含)以后的单词首字母大写,例如:myName
4、下划线:例如:my_name
c.使用变量
"""
1.定义变量
语法:变量名=值
2.使用变量
3.看变量的特点
"""
#定义变量:存储数据TOM
my_name = "TOM"
print(my_name)
#定义变量:存储数据为hf
schoolName = 'hf'
print(schoolName)
d.认识bug
所谓bug,就是程序中的错误。如果程序有错误,需要程序员排查问题,纠正错误。
#定义变量:存储数据TOM
my_name = "TOM"
print(my_name)
#定义变量:存储数据为hf
schoolName = 'hf'
print(schoolname)#报错,schoolname改为schoolName
#正确写法:print(schoolNmae)
常见的bug:
1、代码没有顶格写(python代码一般顶格写)
2、使用变量与定义变量位置颠倒(解释器是从上到下,先定义变量,后使用变量)
e.Debug工具
Debug工具是PyCharm IDE中集成的用来调试程序的工具,在这里程序员可以查看程序的执行细节和流程或者调解bug。
Debug工具使用步骤:
1、打断点
2、Debug调试
3.1 打断点
1、断点位置
目标要调试的代码块的第一行代码即可,即一个断点即可。
2、打断点的方法
a、单击目标代码的行号右侧空白位置
b、右击空白处,单击debug,进行调试
c、Debugger面板,显示的数据在图片右侧空白处,内容为我们程序执行过程当中的变量及细节
Console面板,输出数据显示的位置
第二个蓝色按钮是下一步
Tom是str类型
3.认识数据类型
1.数据类型
"""
1.按经验将不同的变量存储不同的类型的数据
2.验证这些数据到底是什么类型— —检测数据类型————type(数据)
"""
# int— —整型
num1 = 1
#float — —浮点型,就是小数
num2 = 1.1
print(type(num1)) #输出结果为<class 'int'>
print(type(num2)) #输出结果为<class 'float'>
# str ——字符串,特点:数据都要带引号
a = 'hello word'
print(type(a))#输出结果为<class 'str'>
# bool ————布尔型,通常判断使用,布尔型有两个取值 True 和 Flase
b = True
print(type(b))#输出结果为<class 'bool'>
# list ————列表
c = [10,20,30]
print(type(c)) #输出结果为<class 'list'>
#tuple —— ——元组
d = (10,20,30)
print(type(d))#输出结果为<class 'tuple'>
# set—— ——集合
e = {10,20,30}
print(type(e))#输出结果为<class 'set'>
# dict—— ——字典— — —键值对
f = {'name':'Tom','age':18}
print(type(f))#输出结果为<class 'dict'>
4.输出 认识格式化符号
- 格式化输出
- 格式化符号
- 格式化符号
- print的结束符
输出
作用:程序输出内容给用户
print('hello python')
age = 18
print(age)
# 需求:输出“今年我的年龄是18岁”
4.1 格式化输出
所谓的格式输出即按照一定的格式输出内容
4.1.1 格式化符号
格式符号 | 转换 |
---|---|
%s | 字符串 |
%d | 有符号的十进制整数(有符号:正和负号) |
%f | 浮点数 |
%c | 字符 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写ox) |
%X | 十六进制整数(大写OX) |
%e | 科学计数法(小写’e’) |
%E | 科学计数法(大写’E’) |
%g | %f和%e的简写 |
%G | %f和%E的简写 |
技巧:
- %06d,表示输出的整数显示位数,不足以0补全,超出当前位数则原样输出
- %.2f,表示小数点后显示的小数位数
注意:
1、有符号的十进制数:包含正整数和负整数
无符号十进制整数:前面不能加正符号,如果有
2、一个数字前面不能加正负号,那一定是正整数,如果有无符号十进制整数输出,只能输出正整数
4.1.2 格式化符号基础使用方法
"""
1、准备数据
2、格式化符号输出数据
"""
age = 18
name = 'TOM'
weight = 75.5
stu_id = 1
stu_id2 = 1000
# 1、今年我的年龄是X岁 ————整数%d
print('今年我的年龄是%d岁'% age)#输出结果为今年我的年龄是18岁
# 2、我的名字是X ————字符串 %s
print('我的名字是X%s'% name)#输出结果为我的名字是TOM
# 3、我的体重是x公斤————浮点数 %f, .2表示小数点保留两位有效数字,如果直接%f回显示6位小数
print('我的体重是%.2f公斤'% weight)#输出结果为我体重是75.500公斤
# 4、我的学号是x ————%d
print('我的学号是%d'% stu_id1)#输出结果为我的学号为1
# 4.1 我的学号是001
print('我的学号是%03d' % stu_id)#输出结果为我的学号是001
print('我的学号是%03d' % stu_id2)#输出结果为我的学号是1000
# 5、我的名字是x,今年x岁了
print('我的名字是%s,今年%d岁了'%(name,age))#输出结果为我的名字是TOM,今年18岁了
#5.1 我的名字是x,明年x岁了,age+1,表示年龄增加1
print('我的名字是%s,明年%d岁了'%(name,age+1))#输出的结果为我的名字是TOM,明年19岁了
# 6、
print('我的名字是%s,今年%d岁了,体重%.2f,学号是%06d'%(name,age,weight,stu_id))#输出结果为我的名字是TOM,今年18岁了,体重75.50公斤,学号是000001
4.1.3 格式化符号拓展
1、%s的拓展用法
# %s功能强大
# 我的名字是x,今年x岁了,体重x公斤
print('我的名字是%s,今年%s岁了,体重%s'(name,age,weight))#输出结果为我的名字是TOM,今年18岁,体重75.50公斤
2、格式化字符串除了%s,还可以写为’f’{表达式}
age = 18
name = 'TOM'
weight = 75.5
stu_id = 1
# 我的名字是x,今年x岁了,体重x公斤
print('我的名字是%s,今年%s岁了,体重%s'(name,age,weight))#输出结果为我的名字是TOM,今年18岁,体重75.50公斤
# 语法 f'{表达式}' 比%s高效率
print(f'我的名字是{name},今年{age}岁了')#输出结果为我的名字是TOM,今年18岁
4.3 转义字符
- \n:换行
- \t:制表符,一个tab键(4个空格)的距离
# 第一种写法
print('hello')
print('word')
# 第二种写法(换行\n)
print('hello\nPython')
# 转义字符\t
print('\tabcd')
4.4 结束符
1、为什么两个print会换行输出
print('输出的内容',end="\n")
print('hello')#输出结果为hello
#
print('hello',end="\n")
print('hello',end="\t")
#输出结果为hello hello
#
print('hello',end="...")
print('word')
#输出结果为hello...Python
在Python中,print(),默认自带end="\n"这个换行结束符,所以导致每两个print直接会换行展示,用户可以按需求更改结束符。