python
文章平均质量分 52
python相关的博客
一纸春秋
张鼎元的博客。
展开
-
Python笔记 —— pandas数据分析+seaborn可视化实例
现在有student.txt和score.txt数据文件,利用pandas求取每个班级的总分前三名的学生。然后将求取后的结果dataframe,利用seaborn完成数据可视化操作首先导入pandasimport pandas as pd然后利用pandas读取文件,将数据写入到dataframe里面stuDF = pd.read_csv("./data/students.txt",names=['id','name','age','gender','clazz'])scoreDF = pd.r原创 2021-12-14 21:36:20 · 1716 阅读 · 0 评论 -
python笔记 —— 函数,类,异常,模块导入,读写数据
函数函数举例不需要权限修饰符不需要返回值类型如果函数中没有return,那么默认返回值时None# 无参函数def test(): print("hello")# 带参函数def test1(n): print("hello %d"%n)# 求和def jiecheng(n): sum = 0 while n>=1: sum += n n -= 1 print(sum)# 递归,阶乘def jie原创 2021-12-13 21:49:41 · 946 阅读 · 0 评论 -
python笔记 —— 四大数据结构 list,tuple,set,dict 的特点与使用语法
python里面有四大数据结构:列表list,元组tuple,集合set,字典dict列表list列表的元素可以重复列表里面元素的类型可以是任意的列表是可变的,可以对列表的元素进行修改或者删除列表是有序的,因此可以用索引去访问每个元素#创建一个list列表list = [1,1,2,2,3,4,5,'a','abc']print(list)# 分隔线print("-"*30)# 列表的增删改查#增list.append(6) #默认从尾部添加,括号里面是元素值list.in原创 2021-12-11 23:08:06 · 1798 阅读 · 0 评论 -
python偏函数的functools.partial应用
import functoolsdef jian(x,y): return x-yj=functools.partial(jian,y=2)print(j(5))结果是3简单总结functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值)这里就是把y的值固定为了2,之后只需要输入x的值即可另外,当你固定的参数不是最后一个的时候,在输入其他参数的时候需要加上参数名,比如def mul(a, b, c): return a * b *原创 2021-06-15 17:19:01 · 278 阅读 · 3 评论 -
子类和父类共用的__slots__
首先了解一下什么是__slots__引用来自廖雪峰老师的语句正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。先定义class:class Student(object):pass然后,尝试给实例绑定一个属性:s = Student()s.name = ‘Michael’ # 动态给实例绑定一个属性print(s.name)Michael使用__slots__要注意,__slots__定义的属性仅对原创 2021-06-15 17:02:50 · 231 阅读 · 0 评论 -
sorted函数中key的使用
先来看例子L = [('B', 75), ('A', 92), ('C', 66), ('L', 88)]现在针对字母进行排序在这里我们可以用到一种固定的用法key = lambda x:x[?]L3=sorted(L,key=lambda x: x[0])print(L3)结果为这里的key=lambda x: x[0]可以等价于def zi(t): return t[0]lambda作为一个表达式,定义了一个匿名函数,使得函数的表达更为简洁也就是说key其实是原创 2020-06-20 17:07:01 · 4437 阅读 · 0 评论 -
关于python的实例属性与类属性
在创建实例的时候,把一些我们认为必须绑定的属性强制填写进去。通过定义一个特殊的__init__方法,在创建实例的时候,就把name,score等属性绑上去通过__init__的方法,我们是在给实例绑定属性那么类属性呢,其实就像这样class Student(object):name = ‘Student’这里是给Student类本身绑定了一个属性接下来看代码的对比class Student(object): name='student' print(Student.nam.原创 2020-06-23 15:18:30 · 180 阅读 · 0 评论 -
python关于文件读写read()时的读写位置
关于read(size)方法,实际写代码的时候,把size替换成你想要读取的字节数try: f=open('E:\lianxi\python\IO1.txt','r') print(f.read(2)) #这个就是read(size) print(f.read())finally: if f: f.close()而且,当第一次调用完.read()方法后,再次调用时会从上次读取结束的地方开始读我的txt文件里面的内容是123abc经过上面的代码原创 2020-06-27 12:22:51 · 1930 阅读 · 0 评论 -
命令行打开.py(python)文件失败的可能原因
我使用的是vscode,这是建立好的.py文件然后打开命令行,win+r,输入cmd,打开直接输入python err.py会报错,正确的做法是找到你的工作空间,利用cd指令转到对应的文件夹这里我的工作空间的路径是E:\vscode\workplace\1先转到E盘,然后利用cd指令转到对应的文件夹...原创 2020-06-25 13:29:24 · 1396 阅读 · 0 评论 -
python输出杨辉三角(含解析)
首先杨辉三角长这个样子首先来看代码部分def t(): n=[1] while True: yield n n=[1]+[n[i]+n[i+1] for i in range(len(n)-1)]+[1] t1=t()r=[]a=1 for x in t1: r.append(x) a=a+1 if a==11:原创 2020-06-24 22:10:15 · 12678 阅读 · 0 评论 -
关于python的偏函数
import functoolsdef jian(x,y): return x-yj=functools.partial(jian,y=2)#简单总结functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值)#这里就是把y的值固定为了2,之后只需要输入x的值即可print(j(5))结果为3另外,当你固定的参数不是最后一个的时候,在输入其他参数的时候需要加上参数名,比如def mul(a, b, c): ret原创 2020-06-21 16:43:58 · 120 阅读 · 0 评论 -
如何vscode中使用python的input语句
找到左边的侧边栏倒数第二个图标打开这个齿轮,看到下面的这个页面修改console后面的值,就是最后一行代码,修改冒号后的单词为"externalTerminal"“console”: “internalConsole” //调试控制台“console”: “integratedTerminal” //调试控制台和内部终端“console”: “externalTerminal” //外部终端还有一点需要注意的是注意使用input的时候,输入的值是“原创 2020-06-20 15:23:56 · 12441 阅读 · 22 评论 -
(实例解析)关于python中&,|,^,and,or的运算规则详解
先上一段代码来看看&a=9 #9的二进制是1001b=13 #13的二进制是1101print(a&b) #结果是9根据1&1=1,1&0=0,0&0=0,0&1=0的运算规则,类似于千位,百位,十位,个位的一 一比较但其实没有十位个位一说方便理解罢了,按位置来一 一比对运算这里就是1001与1101,1&1为1,0&1为0,0&0为0,1&1为1对应位置上进行运算,得出的结果是1001,再转换为原创 2020-07-28 11:34:09 · 1497 阅读 · 0 评论 -
(Python)廖雪峰老师网站上面的汉诺塔问题分析
汉诺塔问题就是有三个柱子,A柱子上面有三个圆盘,圆盘按由小到大的顺序,从上而下的排列。现在要把所有圆盘从A移动到C,要求每次移动圆盘,小圆盘都在大圆盘的上面。来看代码def move(n, a, b, c):if n == 1:print(‘move’, a, ‘–>’, c)else:move(n-1, a, c, b)move(1, a, b, c)move(n-1, b, a, c)move(3, ‘A’, ‘B’, ‘C’)为了移动n个圆盘,先把n-1个圆盘移动到B,然后把原创 2020-06-17 23:00:58 · 310 阅读 · 0 评论 -
用python写一个斐波那契数列
def fei(n): a=0 b=1 n=0 while n<10: print(b) a,b=b,a+b n=n+1fei(10)斐波那契数列是当前数加上前一个数,得到下一个数字。所以我们需要a和b两个变量,b指向当前数,a指向前一个数。然后设置n,用来规定输出数列的长度。这里需要注意的点有一个,那就是a,b=b,a+ba, b原创 2020-06-23 21:03:08 · 1900 阅读 · 0 评论