随笔分类 - Python
摘要:# 面向对象的三大特性之多态 # 多态 由不同的类实例化得到的对象,调用同一个方法,执行的逻辑不同 # 多态的概念指出了对象如何通过他们的属性和动作来操作及访问,而不需要考虑他们具体的类 # 多态表明了动态(运行时)绑定的存在,允许重载及运行时类型确定和验证 # 多态是由同一个类实例化出的多个对象,这些对象执行方法时,执行的过程和结果是不一样的 class H2O: # 定义了一个水的基类...
阅读全文
摘要:# 面向对象的三大特性之继承 # 当类之间有显著不同,并且较小的类是较大的类所需要的组件时,用组合比较好 (如机器人) # 当类之间有很多相同的功能,提取这些共同的功能做成基类,用继承比较好 (动物——猫) # 继承同时有两种含义:1,继承基类的方法,并且做出自己的改变或扩展(代码重用),这种意义并不大,因为它使子类和基类出现强耦合 # 2,声明某个子类兼容于某基类。定义一...
阅读全文
摘要:# 面向对象 # 类:把一类事物的共有的属性和方法整合到一起就是类 # 对象:基于类而创建的一个具体的事物 # 类有两种属性:数据属性和函数属性 # 1. 类的数据属性是所有对象共享的(属性) # 2. 类的函数属性是绑定给对象用的(方法) class Person: # 类名一般首字母大写 country = '中国' # 数据属性,所有对象共享 def __in...
阅读全文
摘要:# hashlib模块 hash算法 # 用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256(常用), SHA384, SHA512 ,MD5 算法 import hashlib # md5 算法,不能反解 obj = hashlib.md5() obj.update('admin'.encode('utf-8')) # obj.u...
阅读全文
摘要:# configparser模块 配置文件的解析操作 import configparser ''' 一个常见的配置文件 [DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [bitbucket.org] User = hg [topsecret.ser...
阅读全文
摘要:# logging模块 日志 import logging # 日志的级别 默认情况下Python的logging模块将日志打印到了标准输出中,且只显示了大于等于WARNING级别的日志 # 这说明默认的日志级别设置为WARNING(日志级别等级CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET) # 默认的日志格式为日志级别:Logger名称...
阅读全文
摘要:# re模块中的方法 import re # findall() 返回所有满足匹配的结果放到列表中 # search() 函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象, 如果字符串没有匹配,则返回None。 # 可以通过调用group()方法得到匹配的字符串 # match() 同search,相当于在search的基础上加上^,只匹配开头的 # spl...
阅读全文
摘要:Python中的转义字符有
阅读全文
摘要:Xml文件格式如下
阅读全文
摘要:sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0)sys.version 获取Python解释程序的版本信息sys.maxint 最大的Int值sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值sys.platform ...
阅读全文
摘要:# os模块:与操作系统交互的一个接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd os.curdir 返回当前目录: ('.') os.pardir 获取当前目录的父目录字符串名:('..') os.makedirs('dirname1/dirname2') 可...
阅读全文
摘要:import sys,os BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.append(BASE_DIR)
阅读全文
摘要:# 案例:验证码 import random def v_code(): ret = '' for i in range(4): num = random.randint(0, 9) #随机数字 char = chr(random.randint(65, 122)) #随机A-z s = str(random.choice(...
阅读全文
摘要:# random 模块 import random random.random() random.random()方法用于生成一个0到1的随机浮点数:0>> import random >>> print ("random():",random.random()) random(): 0.809221478124 >>> print ("random():",random.random()) ...
阅读全文
摘要:# time 与 datetime 模块 import time # 时间戳 从1970年1月1日0点起到现在所经过的秒数 print(time.time()) # 结构化时间,其中有许多属性可以获得年、月、日、时、分、秒等 thistime = time.localtime() #localtime()的参数中可以放入时间戳 print(thistime) print(thistime...
阅读全文
摘要:# 模块 module 在python中,一个.py文件就是一个模块 # 导入模块的几种方式 ''' 1、import 模块名 导入一个模块,调该模块中的函数时,使用 模块名.函数名()调用 2、import 模块名1,模块名2 导入多个模块 3、import 模块名 as 别名 使用别名导入,调用时使用 别名.函数名()调用 4、import 模块名1 as 别名1, 模块名2 ...
阅读全文
摘要:# 装饰器 # 本质就是函数,为其它函数添加附加功能 # 原则:1,不修改被修饰函数的源代码;2,不修改被修饰函数的调用方式 # 装饰器=高阶函数+函数嵌套(在函数体内又定义函数)+闭包 # 装饰器的简单框架 def timer(func): def wrapper(): # 加上需要的代码 func() # 加上需要的代码 r...
阅读全文
摘要:# 解压序列 现在有一个包含N个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给N个变量? 解决思路:先通过简单的解压赋值给多个变量,前提是变量的数量和序列元素的数量是一致的 下面是简单的代码 p = (1,2,3) # 这里的p是一个元组tuple x,y,y = p >>>x ---1 >>>y---2 >>>z---3 **代码实现1** data = [ 'ABC',2...
阅读全文
摘要:# 迭代器 # 迭代器协议:对象必须提供一个next方法,执行该方法要么返回迭代的下一项,要么引起一个Stopiteration异常,以终止迭代(只能往后走不能往前退) # 可迭代对象:实现了迭代器协议的对象(对象内部定义一个__iter__()方法) # 协议是一种约定,可迭代对象实现了迭代器协议 # 字符串、列表、元组、字典、集合、文件对象等都不是可迭代对象,只不过在for循环,调用了他们...
阅读全文
摘要:s_file = open('test1.txt', 'rb') d_file = open('test2.txt', 'wb') while True: content = s_file.read(1024) # 每次只读取1024个字符 if len(content) == 0: # 说明分段读取完毕 break # 跳出循环 d_file.w...
阅读全文

浙公网安备 33010602011771号