学习python第三天
今天是学习 python 的第三天,此处重点记忆,
1、判断(if)语句
1.1 if 语句体验
- 注意:代码的缩进为一个
tab
键,或者 4 个空格 —— 建议使用空格 - 在 Python 开发中,Tab 和空格不要混用!
1.2 逻辑运算
- and(与 java 的 & 符号类似)
- or(与 java 的 | 符号类似)
- not(与 java 的!符号类似)
1.3 if 语句进阶
elif:相当于 java 的 else if
注意
elif
和else
都必须和if
联合使用,而不能单独使用- 可以将
if
、elif
和else
以及各自缩进的代码,看成一个 完整的代码块
1.4 举一个例子
例子:从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3),与电脑对战,电脑随机出拳
import random def game(): a = random.randint(1, 3) b = int(input("你出石头(1)/剪刀(2)/布(3)\t")) if (a == 1 and b == 2) or (a == 2 and b == 3) or (a == 3 and b == 1): print("电脑赢了") elif (a == b): print("平局") else: print("恭喜你,你赢了") print("电脑出的是%d\t石头(1)/剪刀(2)/布(3)" % a) game()
随机数的处理
- 在
Python
中,要使用随机数,首先需要导入 随机数 的 模块 —— “工具包”
python import random
-
random.randint(a, b)
,返回[a, b]
之间的整数,包含a
和b
2、循环(while)语句
2.1 while的基本使用
首先,初始化计数器
while 条件(判断 计数器 是否达到 目标次数):
条件满足时,做的事情
处理条件:计数器 + 1
2.2 举一个例子
例子:计算 0 ~ 100 之间 所有 偶数 的累计求和结果
def test07(): i = 0 sum = 0 while i <= 100: if i % 2 == 0: sum += i i += 1 print("1-100的偶数和为:%d" % sum) test07()
2.3 break 和 continue
break
和 continue
是专门在循环中使用的关键字(和 java 一样)
break
某一条件满足时,退出循环,不再执行后续重复的代码continue
某一条件满足时,不执行后续重复的代码
小技巧
向控制台输出内容结束之后,不会换行
print("*", end="")
单纯的换行
print("")
2.4 字符串中的转义字符
制表符 的功能是在不使用表格的情况下在 垂直方向 按列对齐文本
\t
在控制台输出一个 制表符,协助在输出文本时 垂直方向 保持对齐\n
在控制台输出一个 换行符
转义字符 | 描述 |
---|---|
\\ | 反斜杠符号 |
\' | 单引号 |
\" | 双引号 |
\n | 换行 |
\t | 横向制表符 |
\r | 回车 |
3、函数基础
3.1 函数基本使用
函数的定义
def method(): print("此处定义了一个函数。") # 函数只有调用才会被执行,解释器只是知道定义了一个method函数 method()
PyCharm 的调试工具
- F8 Step Over 可以单步执行代码,会把函数调用看作是一行代码直接执行
- F7 Step Into 可以单步执行代码,如果是函数,会进入函数内部
带参数的函数
def method(num1, num2): return num1 + num2 # 注意调用带参数函数的形参与实参问题,返回值问题 print(method(2, 5))
3.2 使用模块中的函数(重点)
模块是 Python 程序架构的一个核心概念
- 模块 就好比是 工具包,要想使用这个工具包中的工具,就需要 导入 import 这个模块
- 每一个以扩展名
py
结尾的Python
源代码文件都是一个 模块 - 在模块中定义的 全局变量 、 函数 都是模块能够提供给外界直接使用的工具
模块体验
1、在xxx文件夹下创建九九乘法表.py
def test(): i = 1 while i <= 9: j = 1 while j <= i: print("%d*%d=%d" % (j, i, j * i), end="\t") j += 1 print("") i += 1
2、在xxx文件夹下使用九九乘法表这个模块(不用再写.py尾缀)
import xxx.九九乘法表 as tf # 调用九九乘法表模块下的test方法 tf.test()
模块名也是一个标识符
- 标示符可以由 字母、下划线 和 数字 组成
- 不能以数字开头
- 不能与关键字重名
注意:如果在给 Python 文件起名时,以数字开头 是无法在 PyCharm
中通过导入这个模块的
3.3 Pyc 文件(了解)
操作步骤
- 浏览程序目录会发现一个
__pycache__
的目录 - 目录下会有一个
hm_10_分隔线模块.cpython-35.pyc
文件,cpython-35
表示Python
解释器的版本 - 这个
pyc
文件是由 Python 解释器将 模块的源码 转换为 字节码
Python
这样保存 字节码 是作为一种启动 速度的优化
字节码
-
Python
在解释源程序时是分成两个步骤的- 首先处理源代码,编译 生成一个二进制 字节码
- 再对 字节码 进行处理,才会生成 CPU 能够识别的 机器码
-
有了模块的字节码文件之后,下一次运行程序时,如果在 上次保存字节码之后 没有修改过源代码,Python 将会加载 .pyc 文件并跳过编译这个步骤
- 当 Python 必须重编译时,它会自动检查源文件和字节码文件的时间戳:如果你又保存了源代码,下次程序运行时,字节码将自动重新创建。