python 杂记20191102】的更多相关文章

上下文管理器: def __exit__(self, exc_type, exc_val, exc_tb):若exc_tb不是空,则说明有异常返回值只能是true或false,若是false,则会把之前发生的异常抛出来 =========== 可以定义一个枚举类来管理一些常量 =====使用顺序 ==========自定义字符串比较大小的方法 class MY_CMP(str): def __lt__(self,y): return self+y>y+self ru=[,,,,,,,] aa=l…
#!/usr/bin/env python# -*- coding: utf-8 -*-#1.迭代器&生成器#生成器#正确的方法是使用for循环,因为generator也是可迭代对象:g = (x*x for x in range(10))for n in g: print(n)#斐波拉契数列(Fibonacci),除第一个和第二个数外,任意一个数都可由前两个数相加得到:#1, 1, 2, 3, 5, 8, 13, 21, 34, ...#斐波拉契数列用列表生成式写不出来,但是,用函数把它打印出…
#!/usr/bin/env python# -*- coding: utf-8 -*-#如下是一个购物程序:#先输入工资,显示商品列表,购买,quit退出,最后格式化输出所买的商品.count = 0while True: #做一个循环判断,如果输入的不是数字,基于提示,三次后退出 salary = input("input your salary:") #输入你的工资 if salary.isdigit(): #输入的工资必须是数字才能往下走 salary=int(salary)…
os模块说明:python os模块包含普遍的操作系统功能 os.access(path, mode) # 检验权限模式 os.chdir(path) # 改变当前工作目录os.chflags(path, flags) # 设置路径的标记为数字标记.os.chmod(path, mode) # 更改权限os.chown(path, uid, gid) # 更改文件所有者os.chroot(path) # 改变当前进程的根目录os.close(fd) # 关闭文件描述符 fdos.closeran…
#!/usr/bin/env python# -*- coding: utf-8 -*-import timeprint(time.clock())##返回处理器时间,3.3开始已废弃 , 改成了time.process_time()测量处理器运算时间,不包括sleep时间,不稳定,mac上测不出来print(time.process_time())print(time.altzone)#返回与utc时间的时间差,以秒计算\print(time.asctime())#返回时间格式"Thu Nov…
1.被装饰的函数有参数(一个参数): def w1(func): def inner(arg): # 验证1 # 验证2 # 验证3 return func(arg) return inner @w1 def f1(arg): print(f1) 2.被装饰的函数有参数(两个参数): def w1(func): def inner(arg1,arg2): # 验证1 # 验证2 # 验证3 return func(arg1,arg2) return inner @w1 def f1(arg1,a…
class TestA(object): def __init__(self): print("A is initing"); def foo(self): print("foo"); class TestB(TestA): def __init__(self): #python 实现超类方法的方式 super(self.__class__, self).__init__();#法一 super(TestB, self).foo() #法二 print(type(s…
一.函数 1.numpy 模块中的nonzero函数 nonzero返回的数非零元素的下标. 如果输入是单维度的时候它的返回值只有一个:如果输入是多个维度的话,那么它的返回值也是多个维度的.并且的它的每个维度的值表示的是非零元素在当前维度中的下标. i.ea = [true, flase, flase] nonzero(a) 那么此时的它的返回值应该是((0)) a=matrix[[1,0,0],[0,1,0],[0,0,1]] nonzero(a) 那么此时它的返回值应该是((0,1,2),(…
1. 写文件可以直接使用print函数 file_name = open("file_name.txt","w") print("file contain.",file = file_name) file_name.close() 2. 判断一个文件有没有打开 可以判断文件变量有没有被定义,即有没有在locals()返回的集合中 try: file_name = open("file_name","r")…
1. 输出CSV文件 用python输出csv文件不难,可是MS office excel和WPS 对输出的CSV文件打开规则不一样. WPS可以支持CSV以'\t'为分隔符,打开文件直接写内容 MS office excel必须用','为分隔符,打开文件在写内容之前,要先写入文件头:u"\ufeff",否则输出的中文会出现乱码. import codecs csvstr = 'test' fh = codecs.open("myfile.csv","w&…
python 最近出错总结: 1.而for..in ..中不要用else if  x in y:     print  else:     print2.def fibs(num): ...     result = [0,1] ...     for i in range(num-2): ...             result.append(result[-2]+result[-1]) ...     return result  3.错误提示 IndentationError: exp…
介绍单元测试的好文:https://mp.weixin.qq.com/s/njxc8GXSlc3z_RibK70ROg setUpModule/tearDownModule:在整个模块的开始和结束时被执行. setUpClass/tearDownClass: 在测试类的开始和结束时被执行. setUp/tearDown:在测试用例的开始与结束时被执行注意:setUpClass/tearDownClass的写法稍有不同,首先通过@classmethod进行装饰,其次方法的参数为cls,也可以是别的…
文件打开函数:f = open 表1-1:open函数中模式参数常用值 打开模式 描述 'r' 读模式 'w' 写模式 'a' 追加模式 'b' 二进制模式 '+' 读/写模式 表1-2:文件对象方法 文件对象方法 执行操作 f.close() 关闭文件 f.read(size = -1) 从文件中读取size个字符,当未给定size或给定负值的时候,读取剩余的所有字符,然后作为字符串返回 f.readline() 以写入模式打开,如果文件存在,则在末尾追加写入 f.write(str) 将字符…
一.导言 二.用字典映射代替switch case语句   # 字典代替 switch 语句 # switch () # { # case 0 : # dayName= 'a'; # break; # case 1 : # dayName= 'b'; # break; # case 2 : # dayName= 'c'; # break; # ... # default : # dayName= 'none'; # break; # } def get_a(): return 'a' def g…
参考资料:https://www.cnblogs.com/gareth-yu/p/9097943.htmlimport selectors import socket sel = selectors.DefaultSelector() def accept(sock, mask): # sock相当于key.fileobj conn, addr = sock.accept() # Should be ready print('accepted', conn, 'from', addr) conn…
一.用字典映射代替switch case语句 if/else可以代替switch但是非常不合适. 用字典代替switch: day = 5 switcher = { 0:'Sunday', 1:'Monday', 2:'Tuesday' } day_name = switcher.get(day,'Unknow') print(day_name) 利用get()完整模拟. 在字典中模拟带函数的switch: day = 6 def get_sunday(): return 'Sunday' de…
switcher ={ :'sunday', :'monday', :'thuesday' } day = day_name=switcher.get(day,'Unknow') print(day_name) # sunday def get_sunday(): return 'sunday' def get_monday(): return 'monday' def get_thuesday(): return 'thuesday' def get_default(): return 'Un…
点击了解更多Python课程>>> 最新Python3.6从入门到高级进阶实战视频教程 第1篇 Python入门导学 第2篇 Python环境装置 第3篇 了解什么是写代码与Python的根本类型 第4篇 Python中表明“组”的概念与定义 第5篇 变量与运算符 第6篇 分支.循环.条件与枚举 第7篇 包.模块.函数与变量效果域 第8篇 Python函数 第9篇 高档部分:面向对象 第10篇 正则表达式与JSON 第11篇 Python的高档语法与用法 第12篇 函数式编程: 匿名函数…
洪卫:https://www.cnblogs.com/shwee/p/9060226.html https://sunhwee.com 1 #header{display:none;} /* 将默认的导航头屏蔽掉,这样才能把自己的导航栏加上去 */ 2 3 4 /* 定制自己导航栏的样式 */ 5 #shwtop ul { 6 margin: 0px; 7 padding: 0; 8 list-style-type: none; /*去除li前的标注*/ 9 background-color:…
杂记 zip的用法 对于 a = [1,2,3] b = [3,2,1] 若要同时遍历 for x, y in zip(a, b): pass zip(a, b)=> [(1,2,3),(3,2,1)] 数组复制,以及排序的细节 a = [1,2,3] b = a a.sort() b会随着a一起变化 可以令b = a[:] 就ok了 a.sort()a的内容会改变b = sorted(a)用着个Python的内置函数,可以不改变原数组的顺序 自定义排序 sorted(people, key=l…
python python _.__.__xx__之间的差别 python中range.xrange和randrange的区别 python中 =.copy.deepcopy的差别 python 继承 多态 python 抽象类.抽象方法的实现 python可变对象与不可变对象的差别 python中@staticmethod与@classmethod python垃圾回收 python特殊的数据类型 C++     C++ 操作符.局部 全局变量及自动转换原则     i=i+1,i+=1,i+…
python常用命令: 1.python 或者 python3  打开交互式python解释器 2.python hello.py   通过命令提示符运行python脚本 交互式python解释器常用命令:eixt() 退出 python常用语法: 1.print('hello word')  备注:python2支持print 'hello world' ,但 python3不支持 2.# 注释   表示该行是注释 3.\'  代表‘  \是转义字符 4.100000000000000000L…
随手写的,后续整理. 1. Entry如何调用父类的__init__? 以下错,原因后续分析 super(Your_Entry_Class, self).__init__(self,**kw) 报错:TypeError: must be type, not instance . 莫名其妙 谷歌了下,解决方案如下 apply(Entry.__init__, (self, parent), **kw) 即直接调用父类的__init__ 2. 如何将ttk treeview 的某一行转入编辑状态 事实…
转自:https://blog.tonyseek.com/post/notes-about-python-descriptor/ Python 引入的“描述符”(descriptor)语法特性真的很黄很暴力,我觉得这算是 Python 对象模型的核心成员之一.Python 语言设计的紧凑很大程度上得益于它.所以写一篇笔记文记录关于描述符我知道的一切. 低层 - 纯纯的描述符 纯纯的描述符很纯,基于类中定义的 __get__ . __set__ . __delete__ 三个特殊的方法.实现了这三…
字符串特别是中文在python里面还是有很多需要注意的地方. . . . 一.字符串 . . 1.字符串连接 方式一:单个字符相连用 + 就可以: 方式二:list组内相连,可以用join: 方式三:list与list相连,可以用zip. 方式四:占位符,"%s"字符串格式化的方式 方式五:.format() #字符串连接 + #两两单字符相连 sStr1 = 'strcat' sStr2 = 'append' sStr1 += sStr2 #sStr1改变了 sStr1 + sStr…
新手入门python,开始写一些简单函数,慢慢来,加油~ 一.函数 def myadd(a=1,b=100): result = 0 i = a while i <= b: # 默认值为1+2+3+--+100 result += i i += 1 return result 跟R一样都可以用return返回 二.for 博客:Python for 循环语句 python中的for比R中的要广泛很多,R中的for (i in 1:3)循环的较多的是数值,python包括数值+文本列表. 1.字母…
近日写代码又遇到两个 Python 的坑,觉得值得记录. 递归传参问题 Python 里传参的实现是 assignment,但由于 Python 里都是对象,除了几个基本类型,assignment 基本都是引用的赋值,因此在递归里,你传的参数很可能就被下一层修改掉,例如: def some_func(A): # do your routines some_func(A) 如果这个A是个 mutable 的对象,而你的函数里对A有修改,那每一层递归都是修改同一个对象A. 我是在写一个解数独的程序时…
1.在cmd输入python -V显示当前python的版本信息,一定是大写的V 2.输入python,进入python解释器里面 3.在解释器中,输入exit()或者quit()会退出,一定要加括号 4.列表 movies=['12','32424','分访问','dfewfev','hahh '] #定义列表 for i in range(5): print(movies[i]) #访问列表,用中括号访问 movies=[','分访问','dfewfev','hahh '] #定义列表 fo…
1. 如果已经有一个list或者tuple,要调用一个可变参数怎么办?2. >>> nums = [1, 2, 3]3. >>> calc(*nums)4. 14*nums表示把nums这个list的所有元素作为可变参数传进去5. 关键字参数:def person(name, age, **kw):6. >>> extra = {'city': 'Beijing', 'job': 'Engineer'}7. >>> person('J…
1. Python没有 ++, --操作. 2. Join比+快:tuple比list快 3. Dict的key是区分大小写的 4. 参数顺序:无默认值参数,有默认值参数,tuple,dict 5. 通过对ditc的key的排序实现dict的排序 6.   不论是可以变的还是不可变的,在函数内赋值给参数是不会影响到调用者 7.   import Phone.Mobile.Analog Phone.Mobile.Analog.dial(“021-61750808”) 8.   from Phone…