-
Python是解释型语言
-
除法运算
- // 是整除运算符,返回一个整数,
3//6 == 0
- / 是普通除法运算符,返回一个浮点数,
'3/6=0.5'
- // 是整除运算符,返回一个整数,
-
**
用来操作幂运算>>> 5 ** 2
, 得到的是5 的平方的值 -
Python中没有
char
类型,char = 'A' # 单字符本质是字符串
-
Python区间问题
-
大多数情况都是左闭右开
-
'012'[1:2]
,结果是1 -
list(range(1, 4))
,结果是 [1, 2, 3] -
import random random.randrange(1, 4) #返回1到4的一个数字,只返回1个.不包括4
-
-
个别情况
-
arr = [0,1,2,3] arr.pop(1) # 直接删除下标1,得到arr的值为[0,2,3]
-
-
-
字符串截取
- [:3], 表示从左到右向字符串末尾截取, 从下标0开始,截取3位
"0123"[:3]
得到的结果是'012'
- "0123"[:10] 得到的结果是
'0123'
- [2:], 表示从下标2开始,包括下标2,
"0123"[2:]
, 结果是'23'
"0123"[:]
,完整输出'0123'
- -1表示最后1个字符的下标
"0123"[-3:-1]
,结果是'12'
"0123"[-1:-3]
,结果是空字符串''
- [:3], 表示从左到右向字符串末尾截取, 从下标0开始,截取3位
-
range场景+语法
-
循环遍历固定次数
for i in range(5): #函数定义后的冒号省略会导致报错 print(i) # 输出: 0, 1, 2, 3, 4
-
遍历列表/字符串的索引
s = "hello" for i in range(len(s)): print(s[i]) # 输出: h, e, l, l, o
-
生成等差数列
# 生成 1~10 的偶数 even_numbers = list(range(2, 11, 2)) # [2, 4, 6, 8, 10]
-
反向遍历
for i in range(5, 0, -1): print(i) # 输出: 5, 4, 3, 2, 1
-
快速初始化列表
zeros = [0] * 10 # [0, 0, ..., 0] indices = list(range(10)) # [0, 1, 2, ..., 9]
-
数学计算中的序列生成
[x**2 for x in range(1, 6)] # [1, 4, 9, 16, 25]
-
-
冒号
:
是 Python 语法的一部分,它指示接下来的一段代码属于某个控制结构的代码块(如for
、if
、while
,以及函数定义末尾 等),省略之后程序会抛出 SyntaxError 错误# 片段1 for i in range(5): print(i) # 片段2 def add(a, b): return a + b
-
没有
switch
语句 -
else
可以与for
、while
和try
语句结合使用。对于try
语句,finally
总会执行(无论是否发生异常)。
try:
x = 10 / 0
except ZeroDivisionError:
print("Can't divide by zero")
else:
print("No exception occurred")
finally:
print("This will always execute")
-
Python 支持多重继承
-
不强制类型转换: Python 动态类型语言,无需显式类型转换 / Java 是静态类型语言,需要显式的类型转换
-
元组不可修改: 用圆括号
()
来定义,创建后不能更改其中的元素/ Java可以修改成功my_tuple = (1, 2, 3) # 尝试修改元素会引发错误 # my_tuple[0] = 10 # 会引发 TypeError
-
Python命名是由大小写字母,数字,下划线,汉字等字符组成, 不包括$
-
布尔型True/False,首字母要大写,小写报错
-
str函数
x=5 y=3 z=x+y print(str(z)) #正常执行,不会报错. 输出'8'