Python初学学习笔记
本篇为新生实践课所留作业的学习笔记,记录我尚不熟悉的Python知识
1.保留字即关键字,是 Python 语言中内部使用的单词,代表一定语义。例如:and、class、if、else 等。保留字不能作为标识符,用在变量名、常量名、类名等地方。 Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
1 import keyword 2 print(keyword.kwlist)
2.print如果要带入多个参数,则需要用()
包裹代入的多个参数,参数与参数之间用逗号隔开,参数的顺序应该对应格式字符串中的顺序
%s: 作为字符串
%d: 作为有符号十进制整数
%u: 作为无符号十进制整数
%o: 作为无符号八进制整数
%x: 作为无符号十六进制整数,a~f采用小写形式
%X: 作为无符号十六进制整数,A~F采用大写形式
%f: 作为浮点数
%e,%E: 作为浮点数,使用科学计数法
%g,%G: 作为浮点数,使用最低有效数位
3.字符串处理
(1)len函数用法:len(str),返回整型值
(2)去除指定字符(strip特殊用法)(区分大小写)
1 hello_world = ' **The world ** is big!* ' 2 char_hello_world = hello_world.strip('TH *') 3 print(char_hello_world) 4 #输出he world ** is big! 5 #连同空格消去
(3)字符串替换
source_string = 'The world is big' print(source_string.replace('big','small')) #输出The world is small
以上,注意使用函数后原字符串不会发生变化
4.列表
(1)在列表指定位置添加元素
1 guests=['Zhang san','Li si','Wang wu','Zhao liu'] 2 guests.insert(1,'Hu qi')
(2)删除列表元素
——del list[index]
——list.remove('str')
——list.pop(index)(无索引时默认删除末尾)
(3)列表排序
使用sort会直接改变列表元素顺序,以下写法是错误的:
i=list.sort() print(list.sort) #结果均为None
5.字典
形式:dict[key]=value,其中key和value可以为数字、字符串、列表甚至字典
创建:dict={'key_name':value_num……}
遍历字典:
遍历key和value(.items()):
1 menu={'fish':'40','pork':'30','potato':'20','lamb':'50'} 2 for key,value in menu.items(): 3 print('\nkey:'+key) 4 print('value:'+value)
遍历key(.keys())
遍历value(.values())
后两者与前者类似,不再粘贴代码。
6.函数
(1)参数
python中函数的参数可以是给定的,即默认参数,如:
1 def plus(a,b=2): 2 c=a+b 3 return(c) 4 plus(1) 5 #输出3
python传递的参数可以是元组和字典:
*args
表示的是可变参数,*args
接收的是一个元组;**kw
表示的是关键字参数,**kw
接收的是一个字典。
(2)返回值
python中函数的返回值可以为函数
1 # 定义求和函数,返回的并不是求和结果,而是计算求和的函数 2 def lazy_plus(*args): 3 def plus(): 4 s = 0 5 for n in args: 6 s = s + n 7 return s 8 return plus 9 # 调用lazy_plus()时,返回的并不是求和结果,而是求和函数
在上述例子中,我们在函数lazy_plus
中又定义了函数plus
,而且内部函数plus
是可以引用外部函数lazy_plus
的参数和局部变量的。当函数lazy_plus
返回函数plus
时,相关参数和变量也将会保存在返回的函数中,这种方式也称为“闭包”(Closure)。
7.for循环
1 for i in range(num): #num是整数,此时i是下标,从0开始 2 for i in nums: #nums是列表,此时i是nums中的每一个元素
8.迭代器(看不懂,粘贴至此)
可直接作用于for
循环的数据类型如list
、tuple
、dict
等统称为可迭代对象:Iterable
。使用isinstance()
可以判断一个对象是否是可迭代对象。例如:
1 from collections import Iterable 2 result = isinstance([],Iterable) 3 print(result) 4 result = isinstance((),Iterable) 5 print(result) 6 result = isinstance('python',Iterable) 7 print(result) 8 result = isinstance(213,Iterable) 9 print(result) 10 ''' 11 结果为 12 True 13 True 14 True 15 False 16 '''
所有的Iterable
都可以通过iter()
函数转化为Iterator
。next函数用于遍历迭代器
9.常用数学库函数
abs()
:返回数值的绝对值,例如:
>>> abs(-4)
4
divmod()
:返回两个数值的商和余数,例如:
>>> divmod(7,2)
(3,1)
max()
:返回元素中的最大值,例如:
>>> max(2,6,1,7)
7
min()
:返回元素中的最小值,例如:
>>> min(2,6,1,7)
1
sum()
:返回传入元素之和,例如:
>>> sum((1,2,3,4))
10
>>> sum([1,2,3,4])
10
>>> sum((1,2,3,4),-10)
0
10.序列操作
all()
:判断可迭代对象的每个元素是否都为True
值,例如:
>>> all([1,2,3]) # 列表中每个元素逻辑值均为True,返回True
True
>>> all([0,1,2]) # 列表中0的逻辑值为False,返回False
False
>>> all(()) # 空元组
True
any()
:判断可迭代对象的元素是否有为True
值的元素,例如:
>>> any([0,1,2]) # 列表元素有一个为True,则返回True
True
>>> any([0,0]) # 列表元素全部为False,则返回False
False
>>> any([]) # 空列表
False
sorted()
:对可迭代对象进行排序,返回一个新的列表。例如:
>>> a = ['a','b','d','c','B','A']
>>> a
['a', 'b', 'd', 'c', 'B', 'A']
>>> sorted(a) # 默认按字符ascii码排序
['A', 'B', 'a', 'b', 'c', 'd']
11.python可像C语言一样保留小数位数
print("%.2f"%a)
12.条件运算
x if XXXX else y
如果满足条件,值为x,否则为y
13.模板引用
Python 中要用关键字import
来引入某个模块。比如要引用模块math
,就要在文件的开头用import math
来引入。在调用math
模块中的函数时,引用格式为:模块名.函数名
有些时候我们只需要用到模块中的某个函数,这时不需要导入整个模块,只需要导入该函数即可。语句格式如下:from 模块名 import 函数名1,函数名2....引用时不需要前缀,但如果两次引用的函数名相同,后一个会覆盖前一个
如果想一次性引入模块math
中所有的函数,可以通过如下方式导入:from math import *
14.格式化输出
print会自动换行,如不需要换行则在结尾加end=""
print("Hello",end="") print("!") #输出Hello!
使用 f-string 进行格式化输出
f-string
是从 Python 3.6 才开始使用的一种格式化输出的办法,相比前面两种格式化输出,使用f-string
更易读,更简洁,不易出错,而且速度更快!使用的时候通过f
关键字引出,然后要输出的变量直接在输出内容中用{}
引出。然后其他使用和前面的format
方式类似。
1 a = 5 2 dt = {'a': 123, 'b': 666} 3 print(f"{a} {dt}") 4 #以右对齐方式输出占10位空间大小的整数,并且用0补齐输出 5 print(f"{a:>010}") 6 b = 3.1416 7 #以保留3位小数的方式输出小数,注意是四舍五入的方式 8 print(f"{b:.3f}")
format(num,'.2f')也可保留小数,可用于函数返回值
至此基本结束,预祝考试顺利
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具