python基本语法
qq_33612402
这个作者很懒,什么都没留下…
展开
-
闭包
闭包:调用函数后返回的不是直接结果,而是一个封闭的,再运行即可得到结果的函数。 闭包是函数,闭包返回的也是函数,之后才是结果 闭包定义的时候,内部变量会被引用。当变量变动时,闭包结果那个函数也会变动。 def 闭包 》》》f = 闭包() 》》》f() 》》》最终结果 ...原创 2018-12-24 11:35:12 · 82 阅读 · 0 评论 -
pytho3程序前的奇怪注释
没错 就是那个系统编码使用utf的注释 # -*- coding:utf-8 -*- 一般是没用的,但是有时候系统确实识别不到字符串,这个时候不加它就不行,会报错: import re s = '5.2017年12月收购时,审计机构对笛女传媒出具的审计报告为标准无保留意见(苏亚核【2017】950号),本次审计报告中,审计机构称“由于受审计条件的限制,我们未能实施进一步的审计程序以获取充分、适当...原创 2019-04-26 10:03:44 · 112 阅读 · 0 评论 -
字符编码-爬虫乱码
1 https://blog.csdn.net/w_linux/article/details/78370218 2 https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431664106267f12e9bef7ee14cf6a8776a479bdec9b9000 3 电脑文档...原创 2019-02-22 17:43:56 · 237 阅读 · 0 评论 -
数字范围的+- 1与字母ascii码
不清晰的点其实是提升最快的点,因为1 不清晰代表有问题,这个点可能出错,这时候就相当于不会 2 不清晰但是其实知道是怎么回事,只要老实研究思考一下就能解决,轻松。 一 1 我一直对数字范围不敏感,在算“八天后星期几”“1到30一共几个”的时候总会愣一下,这么直接写出来倒是发现了 对包含本身的计算,其范围是需要-1 2 数组的下标从0开始,for i in range(10)的时候,i也从0开始 r...原创 2019-01-14 11:50:13 · 1954 阅读 · 0 评论 -
装饰器
装饰器:输入函数,对函数做增添之类的,返回函数 另外@是针对函数。解释器会先读@之后的内容,然后作为@的输入 如@a @b a(b(c())) def c() def log(func): def wrapper(*args,**kw): print(‘打开了一次fuc’) return wrapper ...原创 2018-12-25 14:36:39 · 58 阅读 · 0 评论 -
数组和字典
1 定义数组 a = 【i for i in range(10)】 range函数构造一个整数列表 用于循环 2 取数组 a【1:3】 3 set()设置集合 集合中不允许重复 所以list(set(a)) 可以对a进行去重 ...原创 2018-12-25 14:35:58 · 107 阅读 · 0 评论 -
链表
链表实现是靠复合类型定义节点 然后节点之间互相可以连接起来 不必拘泥于链表的抽象形式 本质就节点连接。抽象形式应该为实际理解服务 存在问题1: 定义过程中,self._head的存在 head非固定,只是约定俗成。单纯的表示头结点。 class Solution: “”" @param: head: the first node of linked list. @return: An intege...原创 2018-12-25 14:35:33 · 54 阅读 · 0 评论 -
socket
socket通信 客户端 服务器端编程 客户端发消息,格式正确地址正确即可 socket导入 s.send发送请求 dict变量存储数据 while循环append 之后输出即可 服务器端比较麻烦,暂停再续 ...原创 2018-12-25 14:34:49 · 67 阅读 · 0 评论 -
datetime和time
from datetime import datetime 指定dt = datetime(1995,11,0,00,00) dt.timestamp转换成到1970-1-1的秒数 字符串转datetime cday = datetime.strptime(‘2015-6-1 18:19:59’, ‘%Y-%m-%d %H:%M:%S’) 大写的年份和时分秒,中间空格也要一一对应,不得多余 dat...原创 2018-12-24 11:47:32 · 208 阅读 · 0 评论 -
正则
定义字符串规则方便分类 正则的描述,即通配符 对单个字符 \d表示一个数字 \w表示一个字母或数字 \s表示一个空格 对变长字符 *表示任意个字符 +表示至少一个 ?表示0个或一个 {n}表示n个字符 {n,m}表示n-m个字符 如 \d{3}\s 进阶【】 [0-9a-zA-Z_] 表示一个数字或字母或下划线 [0-9a-zA-Z_]+ ...原创 2018-12-24 11:43:55 · 130 阅读 · 0 评论 -
文件操作
打开文件需要及时关闭释放资源和接口 python有with语句方便操作 D:\工作技能\情书.txt with open(‘path’,‘r’)as f: print(f.read()) 因为编辑器用的notepad+,运行结果命令行页面可能显示不全,这时候就需要写到文件了 ...原创 2018-12-24 11:41:55 · 93 阅读 · 1 评论 -
错误调试
try、、except。。finally 错误类型有钦定,比如ZeroDivisionError(除以零错误)、ValueError 值类型失误 (另外错误可以用 “as e”来赋值,except ValueError as e 是固定语法——理解是因为每个错误互不交叉,所以虽然都是用“e”但是其实并不会干扰) 无错误处理机制,异常会不停上抛直至顶端然后结束程序 logging机制会记录异常并且程...原创 2018-12-24 11:40:26 · 137 阅读 · 1 评论 -
匿名函数lambda
lambda 匿名函数 使用方式 lambda x: #定义 就像def biubiubiu(x): ax+b;#或者x+1,或者X*2等等,函数主体 普通函数 def com(x): return x[“age”] 对x[“age”:20,“name”:“gaylun”] 返回“age”字段 lambda lambda x:x[“age”] 直接返回函数… li=[{“age”:2...原创 2018-12-24 11:38:57 · 112 阅读 · 0 评论 -
type
type()函数可以查看一个类型或变量的类型,Hello是一个class,它的类型就是type,而h是一个实例,它的类型就是class Hello。 type可以创建clss 类似于观测然后结果塌陷 type(‘hello’,(object),dict(hello = fn))名称、继承父类、绑定函数 编译器实质也是使用type进行class创建 元类~没看 ...原创 2018-12-24 11:38:34 · 214 阅读 · 0 评论 -
枚举类
enum 枚举类 !import导入包时,如果有同名文件会直接导入。导致实际导入失败 命名py文件时需要注意,不能同包名相同。 enum包中包括unique装饰器,拒绝重复 定义方式 1 Month = Enum(‘week’,(‘one’,‘two’,‘three’,‘four’,‘five’,‘6’,‘7’)) q = Month.one week是枚举类的名字。这里month的“=”代表这个...原创 2018-12-24 11:38:04 · 246 阅读 · 0 评论 -
模块
模块 导入sys之后可以使用sys变量。 sys.argv存储了命令行所有参数,argv【0】是py的名称 使用技巧:命令行运行py文件会将“name”置为“main” 其他位置不会,因此可用“——name——”做if条件 xxx private变量 xxx 公开特殊变量 ...原创 2018-12-24 11:36:39 · 74 阅读 · 0 评论 -
数字范围的+- 1与字母ascii码(2)
关于range range(n)是0~n-1 range(a,n)是a ~n-1 我想到一个关于取字符串子串的方法 for i in range(len(s)+1): for j in range(i+1,len(s)+1): a = s[i:j] 这里的+1是为了使从零开始的range和从1开始的s【】适配 这个+1的思考来源是 首先手写简单的字符串“abc” 所以子串是“a b c ...原创 2019-05-07 15:15:05 · 940 阅读 · 0 评论