Python基础笔记
创建于:2024年8月27日
一 变量
num = 1
myNum = 2
_Number = 3
命名规则:
- 数字不能作为开头
- 只包含: A-z、0-9 和 _
- 区分大小写
二 数据类型
简单数据类型
整形
a = 1
浮点型
b = 1.2
字符串类型
c = "word"
d = 'word'
布尔类型
e = False
f = True
复合数据类型
列表
a = [1,3,4]
集合
b = {1,2,3}
元组
c = (1,2,3)
字典
d = {'n':1,'b'=2}
三 简单语句
print() 标准输出
输出一段话print("hello")
输出变量值
a = 15
print(a)
输出字符串中参入变量
a = 12
print(f"hello {a}")
print("hello %d" % a)
\t 长空格
\n 换行
输出不换行
print("你好",end="")
input() 运行时获取用户输入值(默认是字符串类型)
a = input("请输入")
str() float() 类型名加()类型转换
a = 15
b = str(a)
c = float(b)
random 随机数
包含两个参数的随机整数
import random
a = random.randint(1,100)
包含两个参数的随机浮点数
import random
a = random.uniform(1,100)
0~1之间的随机小数
c=random.random()
range()
从0~9的列表
区间 [0,9)range(10)
运算
四则运算
+ - * /
支持小括号嵌套改运算顺序
简写可用i += 1
类型自动转换
做除法之后结果为小数,则数据类型自动变为浮点型
次方
a的十次方 a = a ** 10
简写a **= 10
求余 %
a = 10
b = a%2
布尔运算
支持小括号嵌套改运算顺序
a = False
b = not a
c = a or b
d = a and c
字符串运算
"+"拼接
s1 = "O"
s2 = "H"
oh = s1 + s2 # OH
"*"复制
hh = s2 * 2 # HH
ohh = s1 + s2 * 2 # OHH
流程控制
是非
if elif else
循环
while
while a < 10:
a += 1
print(a)
break 结束循环
continue 跳过当前一次的循环
for
for i in range(10):
print(i)
else
接在循环语句之后时,
当循环正常结束时,执行else代码组
如果循环由break退出,则不执行else代码组
for , while 通用
for i in range(10):
print(i)
if i == 5:
break
else:
print("循环正常结束")
下列大多数方法详见Python文档
字符串
与常规字符串不同,原始字符串中的反斜线是一个普通字符,不具有转义功能。
# 常规字符串
myString = "dblab is \namazing!"
# dblab is
# amazing!
# 原始字符串
myString = r"dblab is \namazing!"
# dblab is \namazing!
列表
a = [1,2]
判断元素是否在列表里
a = [1,2,3,"hhh"]
if 1 in a:
print("在")
if 1 not in a:
print("不在")
末尾添加
a.append("abc")
通过下标插入
a.insert(1,'t')
通过下标删除
a.pop(0)
元素删除
a.remove("hhh")
清空
a.clear()
删除
del a
通过下标修改
a[0] = 123
注:字符串不能做下标修改,因为字符串是不可变类型
排序(修改原列表)
a.sort()
排序(返回新列表)
b = sorted(a)
元组
不能修改,只能访问
a = (1,2)
集合
无序,不重复
假如有两个3
s = {1,3,3,4}
则自动变成
s = {1,3,4}
字典
d = {"name":"Pig","age":20}
获取每个键
d.keys()
获取每个值
d.values()
转换为列表里面装元组的形式
d.items()
[('name','Pig'),('age',20)]
遍历
for k,v in d.items():
print(k)
print(v)
空字典
a = {}
注:空集合为
a = set()
函数
def day():
print("起床")
print("学习")
print("睡觉")
调用修改外部变量(全局标量)
声明global
DAY = 0
def day():
global DAY
if DAY % 3 == 0:
print("...")
DAY += 1
day()
参数
可在形参后加冒号提示数据类型
(搜python type hint)
def put_color(img:Image,x_p:int,y_p=1):
print("...")
不定长参数
包裹位置参数(一个星号)
def a(n,*args):
print(n)
for i in args:
print(i)
a(1,2,3,4,5)
包裹关键字参数(两个星号)
def a(n,age=18,*args,**kwargs):
print(n)
print(age)
for i in args:
print(i)
print(kwargs['ns'])
默认参数
def a(n,b=999):
print(n,b)
a(1)
输出:1 999
评论