- 博客(14)
- 收藏
- 关注
原创 迭代器
迭代器1、什么是迭代器2、为何要有迭代器3、如何用迭代器一:引入二:可迭代对象与迭代器对象三:for循环的工作原理四:基于同一迭代器的重复取值,效果如何4.什么是生成器5.yield与return 1、什么是迭代器 器=》工具 迭代:是一个重复的过程,但每次重复都是基于上一次的结果而来的 names=["egon",'lqz','yj'] count = 1 while count < len(names): print(names[count]) count+=1 迭代器:就
2020-08-31 14:43:12 132
原创 名称空间与作用域
一:名称空间:就是存放名字的地方 1.内置名称空间:存放的是内置的名字,如print\input\len 生命周期:解释器启动则产生,解释器关闭则销毁(解释器自带的内置函数) 2.全局名称空间:存放的是顶级的名字 生命周期:python程序运行时则产生,python程序结束则销毁 x=10 def func(): x=11 print(x) print(x) func() 3.局部名称空间:函数内的名字 生命周期:调用函数时则产生,函数调用结束则销毁 名字查找的优先级 从当前位置往外查找,如果当前是在局部:
2020-08-31 10:13:36 137
原创 文件操作
文件操作文件的打开模式1、 r:只读(默认的)2、 w: 只写3 a:只追加写总结:w和a的异同文件操作的其他方式控制文件指针的移动0模式1模式2模式 文件的打开模式 1、 r:只读(默认的) 在文件不存在时则报错,文件存在时文件指针跳到文件开头 f=open('xxx.txt',mode='rt',encoding='utf-8') res=f.read() print(f.readable()) #判读当前打开文件的模式 print(f.writable()) f.close() 2、 w: 只写 在
2020-08-31 10:07:57 155
原创 字符编码
字符编码1.什么是字符编码?1.1字符编码发展史阶段一:一家独大阶段二:群雄割据阶段三:分久必合2.字符编码的应用1、unicode的作用2、乱码问题3.python解释器执行文件的三个阶段 1.什么是字符编码? 人类在与计算机交互时,用的都是人类能读懂的字符,如中文字符、英文字符、日文字符等, 而计算机只能识别二进制数,详解如下。 二进制数即是由0和1组成的数字。计算机是基于点工作的,电的特性就是高低电频,人类从逻辑层面 将高电频对应为数字1,低电频对应为数字0,这直接决定了计算机可以识别的是由0和1组成
2020-08-31 09:53:07 175
原创 装饰器
可变长参数 定义 可变长指的是参数的个数不固定 站在实参的角度,实参是用来为形参赋值的,如果实参的个数不固定那么必须要有对应的形参能够接收溢出的实参 1在形参名前加* *会把溢出的位置的实参存成元组,然后赋值给形参名 def func(x,*y): print(x) print(y) func(1,222,333,4555) func(1) #返回的则是空元组 func() #位置形参x必须被传值,不然报错 #示范: def add(*nums): #将传入的字符聚拢成元组
2020-08-31 09:47:22 98
原创 函数的递归调用
一:引入 函数的递归调用:就是在调用一个函数的过程中又直接或间接地调用了自己 示例1:直接调用自己 def foo(): print('hello') foo() foo() 示例2:间接的调用自己 def foo(): print('from foo') bar() def bar(): print('from bar') foo() bar() 为何死递归会抛出异常? 因为无限的递归会导致内存的溢出,所以python设定了最大的递归层数 impor
2020-08-30 22:14:27 1093 1
原创 函数对象与嵌套
函数对象 函数对象指的是函数可以被当成变量去使用 def foo(): print('from foo') 1.可以被赋值 f=foo #只是代表内存地址 print(foo is f) f() 2.可以当做参数传给一个函数 def bar(func): print(func) #打印foo函数的内存地址 func() #调用foo函数 bar(foo) 3.可以当做一个函数的返回值 def bar(func): print('from bar')
2020-08-30 16:06:37 107
原创 函数的定义与基本使用
1.什么是函数? 2.为何要有函数? 3.如何用函数? 4.函数的基本使用 1.什么是函数 具备某一功能的工具===》函数 工具的使用: 为了实现目的准备好的工具======》函数的定义 遇到应用场景拿来就用====》函数的调用 2.为何要有函数 1.程序的组织结构不清晰,可读性差 2.如果要用到重复的功能,只能拷贝空难呢过的实现代码==》代码冗余 3.可扩展性差 3.如何用函数 函数的使用原则:先定义,后调用 定义函数: def 函数名(参数1,参数2,参数3,...):
2020-08-30 15:59:12 553
原创 数字类型
整型 1.用途 2.定义方式 3.常用操作及内置方法 浮点型 1.用途 2.定义方式 3.常用操作及内置方法 一:整型int 基本使用 1.用途:年龄、个数、号码、出生年等 2.定义方式 字的字符串,或是纯数字但左右两边有空格的字符串,转换成int类型 res = int('18') age = 18 # age=int(18) int功能可以把纯数字的字符串转成int类型 res=int('1.8') 中间有小数点不可以 print(res,type(res)) #18 <class 'int'
2020-08-30 15:38:24 170
原创 集合类型
1.用途 2.定义方式 3.常用操作及内置方法 1.用途: 去重 关系运算 2.定义方式:在{}内用逗号分隔开多个元素, 元素的特点如下: 无序 s1={'aa','bb','bvv','aa'} print(s1) #多次打印 每一次的顺序都不相同,自动去重 元素必须是不可变类型 #集合内的元素不能重复 s1={1,1,1,1,1,1,} print(s1) print(type(s1)) s2=set() print(type(s2)) set是任意能被for循环遍历的类型 res=set('hel
2020-08-30 15:33:22 220
原创 元组类型
1.用途:元组就是一个不可变的列表 2.定义方式:在小括号()内用逗号分隔开多个任意类型的值 l=[111,222,333] print(type(l)) #list t=(111,222,333) print(type(t)) #tuple 类型转换 tuple,任意能够被for循环遍历的类型 list,任意能够被for循环遍历的类型 强调:如果是存一个值的元组,需要加上逗号 t = (11,) print(type(t)) <class 'tuple'> t=(111,222,[333
2020-08-30 15:26:32 2690
原创 字典类型
1.用途 2.定义方式 3.常用操作及内置方法 1.用途:按key:value的形式存放多个任意类型的value,key反应的是value的属性 2.定义方式:在{}内用逗号分开多个key:value,其中value可以是任意类型 # 而key必须是不可变的类型,通常是字符串类型 d={'k1':111,'k1':222,'k1':333} print(d) #key重复只保留一个 #类型转换 l=[('name','egon'),('age',18),('gender','male')] dic=di
2020-08-30 15:23:41 831
原创 列表类型
列表(list) 1.用途 2.定义方式 3.常用操作及内置方法 1、用途:按照位置存多个值 2、定义方式:在[]内用逗号分隔开多个任意类型的值 l = [111, 3.1, "abc", []] # l=list(...) print(type(l)) 类型转换 list(传入的可以是任意能够被for循环遍历的类型) print(list("hello")) print(list(["a",'b'])) print(list({"k1":11,'K2':222})) 3.常用操作及内置方法的使用 1
2020-08-30 15:10:18 556
原创 字符串类型
@[TOC]python的数据类型 字符串(str) 1.用途 2.定义方式 3.常用操作及内置方法 1.用途:记录描述性质的状态 2.定义方式:在单引号、双引号、三引号内包含的一串字符 msg=’[1,2,3]’ msg=str(’[1,2,3]’) 数据类型转换:str可以把任意类型转换成字符串类型 3、常用操作+内置的方法 优先掌握的操作: 3.1、按索引取值(正向取+反向取) :只能取 s = "hallo woalda" print(s[0],type(s[0])) # "h" print(s[
2020-08-30 14:54:51 237
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人