随笔分类 -  Python

*和**的打包和解包
摘要:1 解包的直接理解就是去掉两个{} # 有时候这个会写到函数后面,return直接返回一个字典,里面用**进行解包, # **的作用就是直接去掉字典外的两个{} a = {1:"大", 2:"小"} b = {3:"高", 4:"矮", **a} print(b) # {3: '高', 4: '矮' 阅读全文

posted @ 2020-11-15 19:38 吃我一枪 阅读(103) 评论(0) 推荐(0)

python类常用装饰器
摘要:1 @property, 类似于Java中的get方法,得到类的一个属性或方法,在Python中,它的作用就是get,set,delete,不同的调用将会触发不同的结果,如果是get,则函数里面是直接return的,如果是set,则函数里面是赋值, 阅读全文

posted @ 2020-11-15 19:34 吃我一枪 阅读(727) 评论(0) 推荐(0)

dataframe遍历行
摘要:for i,r in pi_order.iterrows(): for r in pi_order.iterrows(): 注意两者的区别,第一种构成的i是index,为int,r为series,第二种r是tuple,tuple中第一个是index, https://www.jianshu.com/ 阅读全文

posted @ 2020-09-04 22:16 吃我一枪 阅读(1469) 评论(0) 推荐(0)

dataframe给行赋值注意问题
摘要:假如dataframe有两列,给行赋值时,必须是['a','b'],不能是[['a','b']],如果是后者,则会形成复合索引, 并且复合索引有个问题是取一列时,数据类型不是series,而是dataframe, 阅读全文

posted @ 2020-09-04 22:13 吃我一枪 阅读(3441) 评论(0) 推荐(0)

python装饰器
摘要:1 写装饰器的框架 # 写函数装饰器的框架 # 传入被装饰函数, def func1(func): def func2(): # 执行装饰功能后,返回函数 # 而这里返回函数的用法就体现了闭包的思想,参数func对于func2是外部函数的变量, return func # 返回装饰函数 return 阅读全文

posted @ 2020-04-14 23:39 吃我一枪 阅读(136) 评论(0) 推荐(0)

yield用法
摘要:1 一个带有 yield 的函数就是一个 generator,它和普通函数不同,生成一个 generator 看起来像函数调用,但不会执行任何函数代码,直到对其调用 next()(在 for 循环中会自动调用 next())才开始执行。虽然执行流程仍按函数的流程执行,但每执行到一个 yield 语句 阅读全文

posted @ 2020-02-13 16:15 吃我一枪 阅读(975) 评论(0) 推荐(0)

global和nonlocal的用法
摘要:1 nonlocal声明的变量不是局部变量,也不是全局变量,而是外部嵌套函数内的变量.写在内部嵌套函数里面,它实质上是将该变量定义成了全局变量,它等价于用两个global来定义该变量.只不过用两个global来实现太繁琐.只用一个global的话无法在这儿(嵌套函数中)实现. def make_co 阅读全文

posted @ 2019-12-12 21:23 吃我一枪 阅读(401) 评论(0) 推荐(0)

collections模块
摘要:collections是Python内建的一个集合模块,提供了许多有用的集合类. 1 defaultdict 当defaultdict里面套defaultdict时,实际上实现了一个二维坐标的功能. import collections # 普通的dict当引用的key不存在的时候会报错,而defa 阅读全文

posted @ 2019-12-09 15:46 吃我一枪 阅读(277) 评论(0) 推荐(0)

可变对象 不可变对象 浅拷贝 深拷贝
摘要:可变对象和不变对象 可变对象是指,一个对象在不改变其所指向的地址的前提下,可以修改其所指向的地址中的值; 不可变对象是指,一个对象所指向的地址上值是不能修改的,如果你修改了这个对象的值,那么它指向的地址就改变了,相当于你把这个对象指向的值复制出来一份,然后做了修改后存到另一个地址上了,但是可变对象就 阅读全文

posted @ 2019-11-30 17:56 吃我一枪 阅读(584) 评论(0) 推荐(0)

函数参数和变量用法
摘要:1 函数的参数 python的函数参数有四种,分别是位置参数、关键字参数、可变参数和不定长参数. a.位置参数,有时也称必选参数 # 位置参数就是函数定义该参数的时候,没有进行初始化,调用函数传参的时候需要 # 按位置顺序依次将值赋给位置参数 def fun1(x,n): return x+n pr 阅读全文

posted @ 2019-11-27 13:26 吃我一枪 阅读(685) 评论(0) 推荐(0)

链表
摘要:1 把list转化为链表 对链表的第一个节点先进行赋值,因为其比较特殊,不方便放入for循环中. first_node中是表头变量,它用于记录第一个节点数据域的地址,可以看做是独立于整个链表的一个特殊的量. class ListNode: def __init__(self, data, next_ 阅读全文

posted @ 2019-11-17 20:38 吃我一枪 阅读(109) 评论(0) 推荐(0)

Dataframe的索引问题
摘要:1 两个Dataframe相加时,一定要注意索引是否对应再相加,利用这个特点有时可以先用set_index()将某些列置为索引列,再进行相加. import pandas as pd df1 = pd.DataFrame({'a':np.arange(1,5,1), 'b':np.arange(3, 阅读全文

posted @ 2019-11-15 13:28 吃我一枪 阅读(552) 评论(0) 推荐(0)

python对象的引用
摘要:1 利用 * 星号生成二维及二维以上的list时,特别要注意有的量引用是相同的.如果后面要给list赋值,最好不要这样生成list. 可以先这样生成,再打印输出后,粘贴到程序中重新赋值. a = [['a'] * 3] * 3 print(a) a[0][0]= 'b' print(a) # [[' 阅读全文

posted @ 2019-10-30 20:52 吃我一枪 阅读(214) 评论(0) 推荐(0)

tuple用法
摘要:1 tuple中的元素可以直接赋给相同个数的变量 tup1 = ('asfa',234) p, q = tup1 print(p) print(q) # asfa # 234 参考:https://www.runoob.com/python/python-tuples.html 阅读全文

posted @ 2019-10-27 12:04 吃我一枪 阅读(169) 评论(0) 推荐(0)

三种时间格式的转换
摘要:一 时间元组 1. 时间元组和时间戳的互化 import time,datetime # 获取当前时间的时间元组 t = time.localtime() print(t) # 时间元组转时间戳 timestamp = time.mktime(t) print(timestamp) # time.s 阅读全文

posted @ 2019-10-23 22:56 吃我一枪 阅读(908) 评论(0) 推荐(0)

不同包的调用
摘要:在python中,包package的物理层面对应文件夹,模块model的物理层面对应程序文件. 1 如果一个文件夹中有__init__.py文件,则python不会认为它是一个普通的文件夹,而是一个package,在__init__.py程序中用于存放它所在package的顶层目录(即到它的父目录) 阅读全文

posted @ 2019-10-23 18:29 吃我一枪 阅读(312) 评论(0) 推荐(0)

正则表达式
摘要:re模块含有python全部的正则表达式功能 1. re.compile()函数 查找字符串中的数字: import re # 前面的一个r表示字符串为非转义的原始字符串,让编译器忽略反斜杠,也就是忽略转义字符。 # 但是这个字符串里没有反斜杠,所以这个 r 可有可无。 # \d 表示匹配一个数字字 阅读全文

posted @ 2019-10-20 13:56 吃我一枪 阅读(168) 评论(0) 推荐(0)

python类
摘要:1 类有一个名为 __init__() 的特殊方法(构造方法),该方法在类实例化时会自动调用,在定义类的时候,可以先在这个函数里面定义要使用的属性,这样在类里面写其它方法的时候更方便属性的调用, class Rectangle(): def getPeri(self,a,b): return (a 阅读全文

posted @ 2019-10-11 12:15 吃我一枪 阅读(148) 评论(0) 推荐(0)

利用程序解压文件
摘要:1 解压rar # coding=utf-8 import rarfile path = "/home/sxtj/han/yy/dataraw.rar" path1 = "/home/sxtj/han/yy/解压后/" # 待解压文件 rf = rarfile.RarFile(path) # 解压指 阅读全文

posted @ 2019-10-10 16:26 吃我一枪 阅读(144) 评论(0) 推荐(0)

字符串与变量的互化
摘要:1 字符串转变量 当手动输入的list太多时,可以利用如下方法将字符串转为变量,直接调用输入的值. # 将同名的字符串化为对应的变量 variable = [1,2,3,4,5] print(type(variable)) a = 'variable' print(type(a)) a = eval 阅读全文

posted @ 2019-08-30 19:27 吃我一枪 阅读(263) 评论(0) 推荐(0)

导航