【学习笔记】 Python入门
网课知识点汇总
注释
注释的分类
单行注释:#(井号键) 快捷键:ctrl+/
多行注释:’’’(三个单引号,写两行,注释在中间)
注释的作用
1、注释是给程序员看的,不是给机器看的
2、注释是不会被执行的代码,解释器会忽略里面的所有内容
3、注释是程序员之间的交流工具
注意:
1、注释不能相互嵌套
2、要养成书写注释的好习惯
3、注释要有确切的表达意义
关键字
被python语法赋予特殊含义,在编程中不能直接使用,是编程语言里事先定义好的,也称为“保留字”
1 | ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] |
变量、函数、类型、对象名等,统称为“标识符”,定义标识符的规则有:
1、数字不能开头
2、只能使用a-z、A-Z、0-9、_(下划线) 其他符号全部非法
3、python语言严格区分大小写
命名规范:函数/功能(例子:坦克撞击墙壁)
1、小驼峰命名规则:tankHitWall(第一个首字母小写+其余首字母大写)
2、大驼峰命名规则:TankHitWall(所有首字母大写)
3、下划线命名规则:tank_hit_wall(均小写,用下划线隔开)
Python的数据类型
Number(数字):int(整型数据)、float(浮点数据)、bool(布尔数据)(True、False)
String(字符串)、Tuple(元组)、List(列表)、Set(集合)、Dictionary(字典)
查看变量类型:type(变量名)
Python语言在定义变量时,不需要指定变量的数据类型,程序会根据变量值,自动实现变量类型确定
1、整型int
1 | num1 = 999 |
整型不能以0开头,占位符为%d
1 | # 定义整数变量 student_no,输出 我的学号是 000001 |
print是python语言的输出函数,在控制台可以看到程序的执行结果
f→format格式化,在单引号字符串中能够书写大括号,大括号中可以放入’变量名’,如果没有f这个符号,单引号中的大括号没用
单引号和双引号都是可以的,按照规范的话应该是尽可能使用双引号而非单引号,就像在Stata中单引号没办法用,但双引号可以
2、浮点型float
1 | num2 = 66.6 #小数 |
占位符为%f %.1f表示保留1位小数
3、布尔型
只有两个结果,真或者假
1 | is_visited = True #False |
4、字符串类型str
有三种书写格式:①单引号 ②双引号 ③三引号(一般用在多行数据书写)
嵌套书写非常简单,不需要转义
网页中的输入框获取的数据,都是字符串类型的
占位符为%s
有一种特殊机制:内存中的驻留机制(相同的字符串在程序运行期间,其内存中仅存储一份)
基础数据类型不需要考虑内存地址的问题,对象类型才需要
字符串对象内容发生变化,改变的是该字符串的引用地址,而不是该字符串地址对应的内存数据
字符串的切片:将原来的字符串实现切割 [start:stop:step]和range用法类似

5、列表类型
1 | names = ['张三', '李四', '王五', '张三', '李四'] |
特点:有序、可重复、可扩展
6、元组类型
1 | names = ('张三', '李四', '王五', '张三', '李四') |
特点:有序、可重复、不可扩展
变量名称相同时,新的数据会覆盖name空间中原来的数据
7、集合类型
1 | names = {'张三', '李四', '王五', '张三', '李四'} |
特点:无需、不可重复、可扩展
8、字典类型
1 | stu_dict = {'stu_id': '1001', 'name': '张三', 'age': 18, 'score': 100} |
变量
在程序运行期间,随时可能产生一些临时数据,应用程序会将这些数据保存到内存中,变量是内存中一个带标签的盒子
1 | name = '玛丽亚' |
等号为赋值运算符(从右向左看),意思是在内存中,将‘玛丽亚’这个数据存储到名称为name的盒子中,未来在程序中可以通过name这个盒子的名称找到‘玛丽亚’这个数据,字符串需要加引号
输出函数
print(name) #name是变量名,print输出函数输出的是该变量名对应的变量值
print(‘name’) #’name’是字符串,意味着直接输出name这个字符串
转义字符
\t 水平制表符(类似于四个空格) \n 换行
\r 回车 \b 退格
\\ 字符反斜杠 \‘ 单引号 \“双引号
类型转换
1 | num1 = '10' |
输入函数
格式: input(提示信息) 该函数会返回用户在键盘中输入的结果,但一定要小心,因为返回的结果都是str类型
说明:由于input输入函数会返回结果,所以程序中必须要定义一个变量接收input函数返回的结果
input是一个阻塞函数,如果用户不输入,程序就不会继续向下执行
1 | name = input('请输入您的姓名:') |
算术运算符
加+ 减- 乘* 除/ 整除// 取余% 幂运算**
复合赋值运算符:一个变量在自身的基础上发生改变
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | c += a等效于c = c+a |
-= | 减法赋值运算符 | c -= a等效于c = c-a |
*= | 乘法赋值运算符 | c = a等效于c = c * a |
/= | 除法赋值运算符 | c /= a等效于c = c / a |
%= | 取余赋值运算符 | c %= a等效于c = c % a |
**= | 幂赋值运算符 | c = a等效于c = c**a |
//= | 取整除赋值运算符 | c //= a等效于c = c // a |
逗号表达式
原理:元组解包,可以定义多个相同类型
1 | num1 = 10 |
比较运算符
> < >= <= != ==
注意点:运算符前后都应该有一个空格,结果是布尔类型,只有True / False
逻辑运算符
对布尔值之间的运算,判断多个条件的,结果仍然是布尔
1 | #判断一个人是否为男性,并且大于18岁 |
if条件语句-单分支结构
任何简单或复杂的算法都可以由顺序结构、选择结构和循环结构这三种基本结构组合而成。
顺序结构:程序从上到下顺序地执行,中间没用任何的判断和跳转,直到程序结束。
选择结构:程序根据判断条件的布尔值选择性地执行部分代码,明确让计算机知道在什么条件下该去做什么。
if语句是一个整体(含tab的行),这个整体条件如果成立,整体就会被执行,如果条件不成立,这个整体就不会被执行。
if 条件表达式:
条件执行体
if-else条件语句-多分支结构
前者是True,后者是False,只能是二选一,一个整体中只有一个条件会被执行,第二个条件是建立在第一个条件不成立的情况下才会被判断
if 条件表达式:
条件执行体1
else:
条件执行体2
if-elif(else if)-else条件语句
1 | #例如:对一个学生的考试成绩进行等级的划分, |
if条件嵌套
1 | #用嵌套方法两两判断找出最大值 注意缩进 |
随机数 Random
1 | #1.导入随机模块 |
while循环
while 条件表达式:
条件执行体(循环体)
while True:永远不会结束的循环
● 循环使用场景一:循环体确定的循环
1 | #1.定义一个循环变量 |
● 循环使用场景二:遍历指定范围的数
1 | #遍历n~m之间每一个整数 |
● 循环使用场景三:找指定范围中符合特定条件的数
1 | #找出1-100间的偶数 |
● 循环使用场景四:求累加和
1 | #求1-100之间的每个整数的累加和 |
● 循环使用场景五:穷举
1 | #案例:有一个人买了一筐鸡蛋(至少有2个)两个两个的数,多一个,三个三个的数,多一个,四个四个的数,多一个。请问:至少有几个鸡蛋? |
● 循环使用场景六:计数
1 | #统计1-100间满足3倍数的数值个数 |
范围函数range
作用:生成指定范围的序列(有规律的多个数值)
含头不含尾,如果需要数字10,需要写到11
range(start起始值默认从0开始,stop结束值不含本身,step步长默认为1)
1 | #生成【1,2,3,4,5,···,10】序列 |
Python提供了两种循环的实现方式,whi1e和for + range,如何选择
while循环一般在不知道循环次数的情况下使用. while True + break
for + range循环一般在已知循环次数的条件下被使用
循环嵌套
外层每循环一次,内层就会循环所有次
1 | #地球的自转与公转 |
循环流程控制
break用在循环体之中,如果在循环体之中遇到就立即结束。往循环外面跳。
continue用在循环语句之中,作用是终止本次循环,继续下一次循环。往循环的条件位置跳。
1 | for i in range(10): |
else语句
1 | #需求:用户输入密码,有三次机会,如果正确,登灵成功 |
参考来源
作话:重点在于循环,老师讲得很好,感兴趣可以去购买后半段课程。有部分练习代码没放上来。直接复制代码的话,操作过程中可能可能可能有tab问题,手动调整即可。
【学习笔记】 Python入门