全国好的深圳网站设计,广州建筑公司招聘,什么是网站建设?,深圳做营销网站设计文章目录变量和简单的数据类型下划线开头的对象删除内存中的对象列表与元组debug三酷猫钓鱼记录实际POS机小条打印使用循环找乌龟可迭代对象#x1f4d7;理解一#x1f4d8;理解二2️⃣什么是迭代器✔️注意3️⃣迭代器对象4️⃣有关迭代的函数for循环的3用法#x1f338;I …
文章目录变量和简单的数据类型下划线开头的对象删除内存中的对象列表与元组debug三酷猫钓鱼记录实际POS机小条打印使用循环找乌龟可迭代对象理解一理解二2️⃣什么是迭代器✔️注意3️⃣迭代器对象4️⃣有关迭代的函数for循环的3用法I could be bounded in a nutshell and count myself a king of infinite space. 特别鸣谢木芯工作室 、Ivan from Russia 变量和简单的数据类型
下划线开头的对象
单下划线_ 变量 在Python中变量可以包含数字、字母、下划线等所以单独一个下划线_也是一个变量表示一个临时对象一般后续不会用到比如 i 0for _ in range(10):
... i 1
...i程序中运行的最近一个结果 单下划线_也可以表示程序中运行的最近一个结果如 https://machinelearning.blog.csdn.net/
https://machinelearning.blog.csdn.net/_
https://machinelearning.blog.csdn.net/100
100_
10国际化和本地化字符串之间翻译查找的函数 单下划线_作为函数名时一般是代表了国际化和本地化字符串之间翻译查找的函数。
单下划线开头变量_var或函数_fun() 单下划线开头_var的变量或函数_fun表示该变量或函数为内部使用的变量不建议在外部使用但单下划线开头仅仅是一个提示没有权限控制实际上可以在外部访问。同时如果用from module import *和from package import *时这些属性、方法、类将不被导入。
单下划线结尾var_ 为了防止跟系统关键字重名了比如函数里需要有个参数class但是Python中class为关键字所以需要将 class设置为class_。
双下划线开头变量__var或函数__fun() 代表着类中的私有变量名或函数主要用于避免子类覆盖父类的方法如果需要访问需使用_classname__fun()。
前后双下划线变量__var__或函数__fun__() 系统定义的变量名称或函数如Python的魔法函数 __ init__()__ str__()__ new__()__ unicode__() __ call__()__ len__()__repr__()__ setattr__()__ getattr__()__ getattribute__()__ delattr__()__ setitem__()__ getitem__()__ delitem__()__ iter__()__ del__()__dir__()__dict__()__exit__()__enter()__all__()。我们定义变量名称或函数是应该尽量避免前后加双下划线。 版权声明本文为CSDN博主「von Neumann」的原创文章遵循CC 4.0 BY-SA版权协议转载请附上原文出处链接及本声明。 原文链接https://blog.csdn.net/hy592070616/article/details/125114737 删除内存中的对象
a0
del(a)
print(a) //报错列表与元组
i 0
while i5:print(12)i1debug 三酷猫钓鱼记录
a,b,c6,5,8
print(*3表2.1 三酷猫的钓鱼记录)
print(| |日期 鱼名 数量)
print(|1 |2017.11 鲫鱼 %d%(a))
print(|2 |2017.11 鲫鱼 %d%(b))
print(|3 |2017.11 鲫鱼 %d%(c))
print( 总共 %d%d%d19 %(a,b,c))实际POS机小条打印
血的教训%要紧随其后
num1,num2,num36,5,8
price1,price2,price38.1,8.2,8
print(*3表2.1 三酷猫的钓鱼记录)
print(| |日期 鱼名 数量 单价)
print(|1 |2017.11 鲫鱼 str(num1) str(price1))
print(|2 |2017.11 鲤鱼 str(num2) str(price2))
print(|3 |2017.11 草鱼 str(num3) str(price3))
print( 总共数量%d%d%d19 %(num1,num2,num3)总共str(123))使用循环找乌龟
三酷猫钓鱼记录查找 fish_record‘鲫鱼5条、鲤鱼8条、鲢鱼7条、草鱼2条、黑鱼6条、乌龟1只’
fish_record鲫鱼5条、鲤鱼8条、鲢鱼7条、草鱼2条、黑鱼6条、乌龟1只
i0
totallen(fish_record)
print(total)
while itotal:print(str(i) -------- str(total))if fish_record[i:i2]乌龟:print(乌龟有fish_record[i2:i3]只)i5可迭代对象
数字列表字符串列表元组字典…
理解一
Iterable对象就是可迭代对象即可以用for...in...进行遍历的对象就叫可迭代对象。 比如列表元组字符串字典等都属于可迭代对象。
理解二
一个对象如果实现了__iter__方法那么我们称这个对象是可迭代对象。
2️⃣什么是迭代器
理解 一个实现了__iter__方法和__next__方法并且可以通过__next__方法不断返回下一个值的对象称为Itertor即迭代器。 也就是说迭代器均可以使用 for...in... 和next逐一遍历。 迭代器的两个最基本的方法iter() 和 next().
✔️注意
需要注意的是列表元组字典集合字符串均实现了__iter__方法但并未实现__next__方法所以这些对象并不能称为迭代器。
3️⃣迭代器对象
✨iter() 列表元组字符串等对象都可以使用iter()方法来创建迭代器对象。 ✨next() 创建迭代器对象后就可以使用next()方法来访问元素 访问迭代器对象都是从第一个元素开始直到访问结束 迭代器只能往前不会后退 实例 list_1 [1,2,3]it_list iter(list_1)print(next(it_list))1print(next(it_list))2print(next(it_list))3print(next(it_list))Traceback (most recent call last):
...
StopIterationfish_record鲫鱼5条、鲤鱼8条、鲢鱼7条、草鱼2条、黑鱼6条、乌龟1只
fish_record iter(fish_record)
print(next(fish_record))显然如果访问到迭代器对象的最后一个元素时继续访问就会触发StopIteration异常
4️⃣有关迭代的函数
---- enumerate() 语法
enumerate(iterable, start0)用法
返回一个索引和enumerate对象 参数
iterable----可迭代对象或迭代器 start----索引值默认为0 实例
例1
teams[勇士, 热火, 骑士]
enumerate(teams)enumerate object at 0x000002E9569016C0
for t in enumerate(teams):print(t, end )
...(0, 勇士) (1, 热火) (2, 骑士) 例2
teams[勇士, 热火, 骑士]
for i, t in enumerate(teams):print(i, t, end )
... 0 勇士 1 热火 2 骑士 例子3
teams[勇士, 热火, 骑士]
t1 enumerate(teams)
t1.__next__()(0, 勇士)
t1.__next__()(1, 热火)
t1.__next__()(2, 骑士)
t1.__next__()Traceback (most recent call last):...t1.__next__()StopIteration例4
teams[勇士, 热火, 骑士]
t1 enumerate(teams,2)
t1.__next__()(2, 勇士)
t1.__next__()(3, 热火)
t1.__next__()(4, 骑士)
t1.__next__()Traceback (most recent call last):...t1.__next__()StopIteration---- map() 用法
该函数用于将一个函数依次映射到可迭代对象的每个元素上再返回一个map对象 实际上map对象既是可迭代对象也是一个迭代器对象 语法
map(function, iterable, ...)1 参数 function---- 函数 iterable---- 可迭代对象可以有多个iterable
返回
该函数返回一个将 function 应用于 iterable 中每一项并输出其结果的迭代器。 当有多个可迭代对象时最短的可迭代对象耗尽则整个迭代就将结束 实例
由于该函数返回的是迭代器所有我们可以用list()函数将结果转换为列表。 ---- zip() 用法
将多个迭代器对象或可迭代对象中的元素压缩到一起并返回一个zip对象 实际上zip对象既是可迭代对象也是一个迭代器对象 语法
zip(iterable, ...)1 参数
iterable----可迭代对象可以有多个。
返回
该函数在多个iterable上并行迭代从每个可迭代对象上返回一个数据项组成元组。 也就是说 zip() 返回元组的迭代器其中第 i 个元组包含的是每个参数迭代器的第 i 个元素。
如图 ---- filter() 用法
传入带有一个参数的函数function并返回一个filter对象 filter对象中的元素是由参数中的iterable对象使得函数function返回值为True的那些元素组成 通俗讲就是满足function函数条件的那些元素组成了filter对象 实际上filter对象既是可迭代对象也是一个迭代器对象 语法
filter(function, iterable)1 参数
function ----判断函数用于过滤掉对象里不符合条件的元素 iterable ----可迭代对象如列表元组等。
返回
返回一个新的迭代器其中的元素都符合判断函数的条件 实例
我们可以利用list()函数来转换filter()函数的返回值 版权声明本文为CSDN博主「翼同学」的原创文章遵循CC 4.0 BY-SA版权协议转载请附上原文出处链接及本声明。 原文链接https://blog.csdn.net/m0_62999278/article/details/123884858 for循环的3用法
for var in range(9):print(wowudi)fish_record鲫鱼5条、鲤鱼8条、鲢鱼7条、草鱼2条、黑鱼6条、乌龟1只i0
for i in range(len(fish_record)):if fish_record[i2:i3] 5:print(鲫鱼5)i5