注释介绍
① 增强程序的可读性
② 方便代码的后期维护
Python中的注释的分类
① 单行注释
② 多行注释
单行注释
# This is a sample Python script.
多行注释
第一种:
'''
if __name__ == '__main__':
print_hi('PyCharm')
'''
第二种:
"""
if __name__ == '__main__':
print_hi('PyCharm')
"""
变量的说明
在程序中,数据都是存储在内存中,为了更快速的查找或使用这个数据,通常会把这个数据在内存中存储之后定义一个名称,这个名称就是变量
Python标识符规范
① 由数字、字母、下划线组成
② 不能数字开头
③ 不能使用内置关键字
④ 严格区分大小写
Python关键字
False None True and as assert 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
Python命名习惯
① 见名知义
② 大驼峰:即每个单词首字母都大写,例如:MyName
③ 小驼峰:第二个(含)以后的单词首字母大写,例如:myName
④ 下划线:例如:my_name
变量的创建
# 直接命名
age = 3
# 可见类型命名方式
age: int = 3
文件命名
# 下划线
dir_util.py
# 下划线开头
_aix_support.py
# 驼峰
NodeFilter.py
# 全部写在一起
pickletools.py
Python中的数据类型分类
数据类型 | ||
---|---|---|
数值 | int (整型) | |
float (浮点型) | ||
布尔型 | True (真) | |
False (假) | ||
字符串 | str | |
列表 | list | |
元组 | tuple | |
集合 | set | |
字典 | dict |
数据类型的检查
① type()
获取当前数据的类型
c = True
print(type(c)) # -- 布尔型
② isinstance()
当前的数据是否为目标类型,如果是则返回true,否则为false
name_list = [['小明', '小红', '小兰'], ['大伟', '大红', '大山'], 23]
if isinstance(name_list, list):
print('列表数据类型')
数据类型转换的函数
函数 | 说明 |
---|---|
int(x [,base ]) | 将x转换为一个整数 |
float(x ) | 将x转换为一个浮点数 |
complex(real [,imag ]) | 创建一个复数,real为实部,imag为虚部 |
str(x ) | 将对象 x 转换为字符串 |
repr(x ) | 将对象 x 转换为表达式字符串 |
eval(str ) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s ) | 将序列 s 转换为一个元组 |
list(s ) | 将序列 s 转换为一个列表 |
chr(x ) | 将一个整数转换为一个Unicode字符 |
ord(x ) | 将一个字符转换为它的ASCII整数值 |
hex(x ) | 将一个整数转换为一个十六进制字符串 |
oct(x ) | 将一个整数转换为一个八进制字符串 |
bin(x ) | 将一个整数转换为一个二进制字符串 |
数据类型转换示例
# 1. float() -- 转换成浮点型
num1 = 1
print(float(num1))
print(type(float(num1)))
# 2. str() -- 转换成字符串类型
num2 = 10
print(type(str(num2)))
# 3. tuple() -- 将一个序列转换成元组
list1 = [10, 20, 30]
print(tuple(list1))
print(type(tuple(list1)))
# 4. list() -- 将一个序列转换成列表
t1 = (100, 200, 300)
print(list(t1))
print(type(list(t1)))
# 5. eval() -- 将字符串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '[1, 2, 3]'
str3 = '(1000, 2000, 3000)'
print(type(eval(str1)))
print(type(eval(str2)))
print(type(eval(str3)))
算数运算符
算术运算符也即数学运算符,用来对数字进行数学运算,比如加减乘除
算数运算符的使用
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 1 + 1 输出结果为 2 |
- | 减 | 1-1 输出结果为 0 |
* | 乘 | 2 * 2 输出结果为 4 |
/ | 除 | 10 / 2 输出结果为 5.0 |
// | 整除(地板除) | 9 // 4 输出结果为2 |
% | 取余 | 9 % 4 输出结果为 1 |
** | 指数 | 2 ** 4 输出结果为 16,即 2 * 2 * 2 * 2 |
() | 小括号 | 小括号用来提高运算优先级,即 (1 + 2) * 3 输出结果为 9 |
算数运算符的优先级
()
> **
> *
/
//
%
> +
-
赋值运算符说明
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值 | 将= 右侧的结果赋值给等号左侧的变量 |
单个变量赋值
num = 1
print(num)
多个变量赋值
# 赋不同的值
num1, float1, str1 = 10, 0.5, 'hello world'
print(num1)
print(float1)
print(str1)
# 赋相同的值
a=b=10
print(a) # 10
print(b) # 10
复合赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | 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 |
比较运算符
比较运算符也叫关系运算符, 通常用来判断
比较运算符使用
运算符 | 描述 | 实例 |
---|---|---|
== | 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a == b) 为 True |
!= | 不等于 。如果两个操作数的结果不相等,则条件为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a == b) 为 True如a=1,b=3,则(a != b) 为 True |
> | 运算符左侧操作数结果是否大于右侧操作数结果,如果大于,则条件为真,否则为假 | 如a=7,b=3,则(a > b) 为 True |
< | 运算符左侧操作数结果是否小于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=7,b=3,则(a < b) 为 False |
>= | 运算符左侧操作数结果是否大于等于右侧操作数结果,如果大于,则条件为真,否则为假 | 如a=7,b=3,则(a < b) 为 False如a=3,b=3,则(a >= b) 为 True |
<= | 运算符左侧操作数结果是否小于等于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=3,b=3,则(a <= b) 为 True |
逻辑运算符说明(与、或、非)
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。 | True and False, 返回 False。 |
or | x or y | 布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。 | False or True, 返回 True。 |
not | not x | 布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not True 返回 False, not False 返回 True |
数字之间的逻辑运算
① and 运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
② or 运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
a = 0
b = 1
c = 2
# and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print(a and b) # 0
print(b and a) # 0
print(a and c) # 0
print(c and a) # 0
print(b and c) # 2
print(c and b) # 1
# or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
print(a or b) # 1
print(a or c) # 2
print(b or c) # 1
流程控制语句的分类
① 顺序语句
② 分支语句 (条件语句)
③ 循环语句
代码示例
https://blog.csdn.net/cui_yonghua/article/details/95719103
if语句介绍 (条件语句)
通过一条或多条语句(判断条件)的执行结果(True/False)来决定执行哪个分支的代码块。Python中提供的分支语句为:if…else语句,没有提供switch…case语句
if语句的分类
① 单分支:只有一个 if 判断
② 双分支:一个完整的 if…else
③ 多分支:多个 if…elif
双分支
age: int = int(input('请输入你的年龄'))
if age > 18:
print(f'你的年龄是{age},不能上网!')
else:
print(f'你的年龄是{age},可以上网!')
多分支
print('注意:中国合法的工作年龄为18-60岁!')
customizeAge: int = int(input('请输入你的年龄'))
if customizeAge < 18:
print(f'你的年龄是{customizeAge},不合法!')
elif 18 <= customizeAge <= 60:
print(f'你的年龄是{customizeAge},合法的工作年龄!')
elif customizeAge > 60:
print(f'你的年龄是{customizeAge},法定的退休年龄!')
模块导入
# 第一种 (导入random模块中的random函数)
from random import random
# 第二种 (导入random模块)
import random
三目运算符 (三元运算符、三元表达式)
与java不同,java是先判断,然后再给值。python是先给值,再判断。
使用介绍
a: int = 3
b: int = 4
c = a if a > b else b
print(f'c的值为{c}')
循环语句的分类
在Python语句中,循环语句只有两种
① While循环
i = 0
while i < 5:
print(i)
i += 1
② for循环
# 打印数字
for j in range(1, 101):
print(j)
# 打印字母
company: str = 'itheima'
for i in company:
print(i)
③ while…else循环
while 条件:
条件成立重复执行的代码
else:
循环正常结束之后要执行的代码
④ for…else循环
for 临时变量 in 序列:
重复执行的代码
...
else:
循环正常结束之后要执行的代码
循环的控制
① continue关键字:跳过循环
② break关键字:跳出循环
案例介绍
① 100内的累加
# while循环
j = 0
result = 0
while j <= 100:
j += 1
result += j
print(f'result的值为:{result}')
# for循环
result = 0
for j in range(1, 101):
result += j
print(f'result的值为:{result}')
② 100内的偶数和
j = 0
result = 0
while j <= 100:
if j % 2 == 0:
result += j
j += 1
print(f'result的值为:{result}')