迭代器 迭代器 迭代: # 更新换代(其实也是重复)的过程,每一次的迭代都必须基于上一次的结果(上一次与这一次之间必须是有关系的) 迭代器: # 迭代取值的工具 为什么用迭代器: # 迭代器提供了一种可以不依赖索引取值的方式 # 会一直打印0,记得停止 # n = 0 # while True: # print(n) # 重复 + 每次迭代都是基于上一次的结果而来的 l = [1, 2, 3, 4, 5] s = 'hello' n = 0 while n < len(s): print(s[n…
一.迭代器 1.迭代:更新换代(重复)的过程,每次的迭代都必须基于上一次的结果 迭代器:迭代取值的工具 2.迭代器给你提供了一种不依赖于索引取值的方式 3.可以迭代取值的对象:字符串,列表,元组,字典,集合等 4.可迭代对象:内置有__iter__方法的都叫做可迭代对象 5.针对双下划线开头和结尾的方法:读法是双下+方法名 6.基本数据类型中,是可迭代对象的有:str.list.tuple.dict.set 文件对象(执行内置的__iter__之后还是本身,没有任何变化):文件对象本身就是迭代器…
python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2="hello world" # s3="""hello world""" # s3='''hello world''' 补充: 字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如nam…
[TOC] 一.反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的研究.它首先被程序语言的设计领域所采用,并在Lisp和面向对象方面取得了成绩.即面向对象中自己检测自己有没有某种方法或者属性 反射的四个函数 1.hasattr(object,name) 判断对象/类/模块中是否有某种属性或者方法,注意第二个参数是字符串 该函数返回的是,存在返回True,不存在返回Fals…
一. 反射 ''' # isinstance class A:pass class B(A):pass a = A() print(isinstance(a,A)) # 判断对象和类的关系 print(issubclass(B,A)) # 判断子类和父类的关系 print(issubclass(A,B)) ''' #--------------------------------------------------------------------------------# # # 反射:是用…
目录 while与for循环的补充 while + else 死循环 while的嵌套 for补充 range函数 break与continue与else for循环的嵌套 数据类型的内置方法 int整型 float浮点型 str字符串 作业 答案 while与for循环的补充 while + else else不仅能和if连用,它还能与while连用. 语法结构: while 条件: 循环体代码 ... else: 代码块 ... 注意:else中的代码块并不是一定会执行,只有在while循环…
类的内置方法(魔法方法): 凡是在类内部定义,以__开头__结尾的方法,都是类的内置方法,类的内置方法,会在满足某种条件下自动触发. 1.1__new__ __new__:在___init__触发前,自动触发.调用该类时,内部会通过__new__产生一个新对象 __init__:在调用类时自动触发.通过产生的对象自动调用__init__() class Demo(object): # 条件: __new__: 在__init__触发前,自动触发. def __new__(cls,*args,**…
**递归**        def calc(n):            print(n)            if int(n / 2) == 0:  条件判断                return n            return calc(int(n/2))        calc(10)        结果为10,5,2,1                下一个是实现过程            def calc(n):                print(n)  …
一.字符串: lis='my name is maple' res=lis.count('m')#计算字符串内相同字符的个数 print(res) lis='my name is maple' res=lis.split(' ')#按照制定的分隔字符,分隔开多个字符串,存放到一个列表中 print(res) lis=' my name is maple ' res=lis.strip(' ')#将字符串左右2遍的制定字符删除掉,碰到不是制定字符就停止删除 print(res) lis='my n…
#可变类型: 值变了,但是id没有变,证明没有生成新的值而是在改变原值,原值是可变类型#不可变类型:值变了,id也跟着变,证明是生成了新的值而不是在改变原值,原值是不可变 # x=10# print(id(x))# x=11# print(id(x))# y=['a','b','c']print(id(y))y[0]='A'print(y)print(id(y)) #一: 整型int# ======================================基本使用=============…