python
写写自己关于python的想法
请叫我大虾
这个作者很懒,什么都没留下…
展开
-
python三十六:shelve模块
shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写.key必须为字符串,而值可以是python所支持的数据类型.import shelvef = shelve.open("shelve.txt")f["info1"] = {"name":"guanyu", "age":18}f["info2"] = {"name"原创 2018-09-04 23:38:44 · 247 阅读 · 0 评论 -
python三十七:xml模块
# xml文件<data> <people name="liubein"> <age must="yes">22</age> <sex>man</sex> <job name="emperor"/&am原创 2018-09-05 22:47:21 · 247 阅读 · 0 评论 -
python三十八:re模块
正则表达式(re模块)是一种小型的,高度专业化的编程语言。(在python中)它内嵌在python中,并通过re模块实现。正则表达式模块被编译成一系列字节码,然后由用c编写的匹配引擎执行。 正则就是处理字符串的。1.普通字符:字符串本身的方法。比如字符串的 find(), split(). 2. 元字符: .^$*+?{}[]|()\import res = "h...原创 2018-09-08 23:33:08 · 1540 阅读 · 0 评论 -
python三十九:logging模块
import logginglogging.basicConfig( level=logging.DEBUG # 设置日志级别, 默认为 WARNING ,filename="logger.log" # 将日志信息输出到文件中 ,filemode="w" # 文件打开模式,默认为'a' # asctime:字符串形式的当前时间 filename:文件名称...原创 2018-09-30 20:20:40 · 270 阅读 · 0 评论 -
python四十:configparse模块
# 创建配置文档import configparserconfig = configparser.ConfigParser()config["DEFAULT"] = { "ServerAliveInterval":"45", "Compression":"yes", "CompressionLevel":"9"}confi原创 2018-10-11 18:05:42 · 211 阅读 · 0 评论 -
python四十一:hashlib模块
import hashlibobj = hashlib.md5()obj.update("md5dd".encode("UTF-8"))print(obj.hexdigest())obj.update("md5ddd".encode("UTF-8"))print(obj.hexdigest())原创 2018-10-22 10:10:17 · 260 阅读 · 0 评论 -
python四十二:类和对象
类有数据属性和函数属性, 但对象只有数据属性。 def funName(args): '函数文档字符串' 函数体class 类名: '类的文档字符串' 类体 创建一个类 class foo: pass 用类foo实例化一个对象 f = foo() 实例化干了什么事? def dog(name, typ...原创 2018-10-23 22:24:43 · 224 阅读 · 0 评论 -
python二十八:模块
模块: 在python中,一个.pywe文件称为一个模块. 使用模块,可以提高代码的可维护性. 分类: 1.python标准库 2.第三方模块 3.应用程序自定义模块 import做了两件事情: 1.执行调用的模块文件.如上图,执行了calc.py文件. 2. 引用变量名calc(文件名calc被当做一个变量名) fro...原创 2018-08-23 23:28:22 · 250 阅读 · 0 评论 -
python二十九:文件夹,包
建一个包,默认会有一个__init__.py文件. 而建立一个文件夹,则什么也没有.原创 2018-08-23 23:44:35 · 229 阅读 · 0 评论 -
python二十九:__name__
__name__是一个变量.当在执行文件中打印__name__,该变量内容是'__main__'def add(x,y): print("add") return x+ydef sub(x,y): return x-y# 当别的py文件调用该文件,那么下面这段代码就不会被执行,便于测试if __name__ == '__main__': a =...原创 2018-08-25 00:20:19 · 216 阅读 · 0 评论 -
python三十:time模块
import time# 时间戳 方便两个时间的加减print(time.time()) # 从1970-01-01 00:00:00开始到当前时间的秒数print(time.localtime()) # 结构化时间t = time.localtime()print(t.tm_year)# 将结构化时间转换成时间戳print(time.mktime(time.local...原创 2018-08-26 14:44:00 · 248 阅读 · 0 评论 -
python三十一:random模块
import randomret = random.random() # (0,1)之间的float数ret = random.randint(1,10) # [1,10]ret = random.randrange(1,10) # [1,10)ret = random.choice([1, "ab", [4,5,6]]) # 随机出现可迭代对象中的元素ret = random....原创 2018-08-26 22:33:52 · 225 阅读 · 0 评论 -
python三十二:os模块
os模块是与操作系统交互的一个模块.import osprint(os.getcwd()) # 获取当前工具目录,即当前python脚本工作的目录路径os.chdir("test") # 改变当前脚本工作目录,相当于cd命令os.chdir('..') # 返回上一层目录os.makedirs('test2/test5')# 可生成多层递归目录os.mkdir('test3')...原创 2018-08-28 23:32:35 · 594 阅读 · 0 评论 -
python三十三:sys模块
sys.exit(0) # 退出程序,正常退出时exit(0)print(sys.version) # 获取python解释程序的版本信息print(sys.platform) # 返回操作系统平台名称print(sys.path) # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值# 小小的进度条功能import sysimport timefor i ...原创 2018-08-29 22:56:51 · 285 阅读 · 0 评论 -
python三十四:json模块
import jsondic = {"name":"guanyu","age":18}lt = ["abc",'def']data = json.dumps(dic) # 所有的数据类型都转换成字符串print(data, type(data))data = json.loads(data) # 将字符串解析成对应的数据类型print(data, type(data))d...原创 2018-08-29 23:37:11 · 234 阅读 · 0 评论 -
python三十五:pickle模块
pickle和json的用法是一样的.但 pick序列化后的数据是字节,不是字符串.所以pickle可以序列化函数,对象等.import pickledic = {"name":"guanyu","age":18}lt = ['abc','def']data = pickle.dumps(dic) # 所有的数据类型都转换成字符串print(data, type(data)...原创 2018-09-04 00:38:46 · 247 阅读 · 0 评论 -
python二十四:python练习题
1.布尔值为False的值b = ""b = Noneb = ()b = []b = {}b = Falseb = 0print(b, bool(b))2.计算一个范围内,既能被5除,又能被7除的数的个数,和所有这些数的和# 循环写法def func(start, end): ret = [] cnt = 0 sum = 0 whil...原创 2018-08-01 22:52:38 · 978 阅读 · 0 评论 -
python二十五:装饰器
装饰器:本质是函数,为其他函数添加附加功能. 原则: 不修改被修饰函数的源代码. 不修改被修饰函数的调用方式. 装饰器 = 高阶函数+函数嵌套+闭包. 高阶函数: 函数接收的参数是一个函数名或者函数的返回值是一个函数名.函数嵌套def liubei(name): # 函数嵌套 def liuchan(): pri...原创 2018-08-05 14:00:14 · 199 阅读 · 0 评论 -
python二十三:装饰器 ?
import time# 装饰器的架子def timer(func): def wrapper(): start_time = time.time() func() stop_time = time.time() print("函数运行时间%s"%(stop_time-start_time)) retur...原创 2018-08-12 22:00:33 · 211 阅读 · 0 评论 -
ython二十四: *和**参数可以和普通位置参数转换
def test2(name,age,gender): print("test2...name=%s,age=%s,gender=%s"%(name,age,gender))test2("liubei",19,"male")test2(*("liubei",18,"male"))def test2(*args, **kwargs): print(args) ...原创 2018-08-12 23:10:56 · 229 阅读 · 0 评论 -
ython二十五: 解压序列
通过解压序列,获取可迭代序列的值 直接交换两个变量的值原创 2018-08-15 15:58:39 · 247 阅读 · 0 评论 -
Python单引号、双引号和三双引号的区别
转载自:https://blog.csdn.net/sinat_25957705/article/details/71055406Python单引号、双引号和三双引号的区别python字符串通常有单引号('...')、双引号("...")、三引号("""...""")或('''...''')包围,三引号包含的字符串可由多行组成,一般可表示大段的叙述性字符串。在使用时基本没有差别,但双引号和...转载 2018-08-21 20:56:29 · 530 阅读 · 0 评论 -
python二十六: 字符串颜色
i = 0while i<50 : print("\033[1;"+str(i)+"m这是查询功能:\033[0m", i) i += 1原创 2018-08-21 21:15:52 · 695 阅读 · 0 评论 -
python二十七:从最内部的循环直接跳出来
tag = True # 通过一个tag标识,那么就可以从最内部的循环直接跳出来while tag: print("level1>>") ipt = input() if ipt == 'quit':break if ipt == 'quit_all': tag = False while tag: print("level2...原创 2018-08-21 23:16:50 · 372 阅读 · 0 评论 -
python二十三:生产者 消费者模型
# yield 相当于return,控制的返回值# res = yield 的另外一个特性,接收send传过来的值,赋值给resdef yieldTest(): print("刘备") res = yield 1 print("关羽", res) yield 2 print("张飞") yield 3g = yieldTest()res ...原创 2018-07-31 23:45:43 · 228 阅读 · 0 评论 -
python二十二:迭代,三元表达式,列表解析
迭代器协议:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代(只能往后走,不能往前退) 可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个_iter_()方法) 协议是一种约定,可迭代对象实现了迭代器协议,python的内部工具(如for循环,sum,min,max函数等)使用迭代器协议访问对象 ...原创 2018-07-29 17:43:35 · 397 阅读 · 0 评论 -
python二十:内置函数
# 求绝对值abs(-1)# 遍历可迭代对象,如果每个可迭代对象中的元素都是true,则返回true# 如果可迭代对象为空,也返回true all(''), all([])all([''])# 遍历可迭代对象,如果可迭代对象中,有一个元素是true,则返回trueany(['', 1])# 二进制转换bin(6)# utf-8, gbk, ascii 编码格式就像字典...原创 2018-07-21 22:22:18 · 268 阅读 · 1 评论 -
python二十一:文件操作
文件处理流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3. 关闭文件# r:文件读模式f = open("undo", 'r', encoding="utf-8");# 读取文件数据data = f.read()print(data)# 关闭文件句柄f.close()# 判断文件是否可读f.readable()# 读取文件的一行...原创 2018-07-27 12:09:28 · 293 阅读 · 0 评论 -
编程语言介绍
看到画面,用到显示器。听到声音,用到声卡。那么我们就需要通过操作系统与显示器,声卡等硬件打交道。操作系统也是一种软件。 有了操作系统软件替我们和硬件打交道,我们(万能的程序员)在操作系统上就可以通过掌握的编程语言,各展其能,编写各种各样的功能丰富的软件。...原创 2018-06-28 15:26:45 · 319 阅读 · 0 评论 -
python一:hello world
编写第一个python,输出"Hello World"通过运行程序,我们知道python程序的文件后缀可以不是.py结尾。但当完成一个项目,python文件之间依赖,就要以.py后缀结尾,不然程序会报错。 同时,我们也了解了python的两种执行方式的一种,即上图中方式 "python解释器 文件"; 第二种方式:通过cmd---输入python---进入python解释器,这种方式,...原创 2018-06-29 22:52:25 · 317 阅读 · 0 评论 -
python二:注释
# 单行注释''' 多行注释 多上注释 print("多行注释, 不会执行")'''n = input('请输入用户名:')原创 2018-06-29 23:06:21 · 286 阅读 · 0 评论 -
python三:if...else
#1 if基本语句n = input('请输入一个数字:')i = '1'if (i == n): #记得加上 : print('这是1') # print是一个一个tab空格 print('和上面一句在同一个代码块')else: print('这不是1') #2 if支持嵌套n = input('请再输入一个数字:')i = '2'if (i == n): #记...原创 2018-06-30 14:24:36 · 343 阅读 · 0 评论 -
python四:字符串和数字
# 字符串(引号括起来)s1 = "双引号括起来的字符串"s2 = '单引号括起来的字符串's3 = """三个双引号"""s4 = '''三个单引号'''print(s1)print(s2)print(s3)print(s4)#字符串+(加)表示连接字符串s5 = s1+"+"+s2print(s5)#字符串*(乘)表示:让一个字符串重复出现n次s6 = s1*2...原创 2018-06-30 15:08:21 · 576 阅读 · 0 评论 -
python五:运算符
name = "tianxia"pwd = "xiatian"# 依次从左向右执行, name == "tianxia" and pwd == "xiatian" 为true,当遇到or# python解释器就会直接返回true,不再去判断or后面是否正确# True or --->直接返回true, 不再判断or后面的表达式# True and --> 继续判断and后面...原创 2018-07-01 00:46:33 · 258 阅读 · 0 评论 -
python六:常见数据类型以及常见用法
bool 布尔值int 整形float 浮点型str 字符串dict 字典list 列表tuple 元祖原创 2018-07-01 01:27:16 · 362 阅读 · 0 评论 -
python七:编码
unicode:俗称万国码,utf-8是unicode的压缩版。一个中文字符,utf编码占3个字节;gbk编码占2个字节。原创 2018-07-03 12:18:40 · 282 阅读 · 0 评论 -
pycharm工具
Pycharm中默认是不能用Ctrl+滚轮改变字体大小的,可以在file -> Setting ->Editor-〉Mouse中设置以下内容完全参考:blog.csdn.net/tantexianhttps://blog.csdn.net/qq_27231343/article/details/51705544Ctrl + O 根据name模糊查找当前文件中类、方法Alt + (向左...转载 2018-07-03 15:27:45 · 477 阅读 · 0 评论 -
python八:列表(list)
列表类:list# python中,通过list类创建列表对象# 语法规则,用中括号括起来,元素用逗号分隔,比java创建list列表方便很多# python列表还强大的一点是:可以装不同类型的数据(对象)lt = [1,2,3,['fdsaf','tianxia'],True,4,"dsa"]# 同python字符串,java列表,python列表同样支持循环for item in l...原创 2018-07-04 12:27:12 · 451 阅读 · 0 评论 -
python十:字典(dict)
dt = { "key1": "abc", # 一个键值对(key:value)是一个元素 # 键值对的value可以是任何值 "key2": [ "ddd", (88,99), { "key1": "vvv", "key2": "yyy&原创 2018-07-06 00:44:11 · 301 阅读 · 0 评论 -
python九:元祖(tuple)
# 元祖类tuple# 元祖用小括号括起来,一般都会在最后一个元素后加个逗号,区分函数(函数也是用小括号括起来的)# 元祖的一级元素不可被修改,增加,删除.但元祖里嵌套的列表等可以被修改tu = (1, 2, 3, 4, [9, 8, 7],)print(tu)# 索引取值v = tu[1]print(v)# 切片取值v = tu[1:3]print(v)# 支持for循...原创 2018-07-06 00:52:11 · 285 阅读 · 0 评论