我的Python教程
文章平均质量分 65
或许对了
我曾七次鄙视自己的灵魂
展开
-
python 实现文本文件的编码检测和转换
python 实现文本文件的编码检测和转换记得在前公司做嵌入式开发时,总是会遇到因代码文件编码不对导致的注释乱码问题。因为部门里很多人喜欢使用 GB2312,而我比较倾向于用 utf-8 编码,所以每次合并他们代码的时候,通常我会使用一个 find 和 enca 的组合命令,对工程检索将 GB2312 的 .c 和 .h 文件转码为 utf-8,那么我们是不是可以自己编写一个 python 工具实现文件编码的检测和转换呢?当然可以,借助第三方库 chardet 就可以做到!编码操作要对文件编码转换前,转载 2021-05-11 15:41:00 · 4160 阅读 · 0 评论 -
Python3 中使用 Pathlib 模块进行文件操作
Python3 中使用 Pathlib 模块进行文件操作更多参考官方文档 pathlib — 面向对象的文件系统路径在本教程中,你将了解如何使用 pathlib 模块操作目录和文件的名称。 学习如何读取和写入文件,拼接路径和操作底层文件系统的新方法,以及如何列出文件并迭代它们的一些示例。 大多人处理文件用的最多的还是 os 模快吧,比如下面这样的操作>>> path.rsplit('\\', maxsplit=1)[0]或者写出下面这样长长的代码>>> os.转载 2021-05-11 14:40:26 · 4225 阅读 · 0 评论 -
python 类变量和实例变量
python 类变量和实例变量偶然发现个不错的教程,是苏大老师的关于类变量实例变量更多代码示例类变量(类属性)类变量【类名.类变量名】1、类变量在class内,但不在class的任何方法内,存在类的内存里2、类变量是该类所有实例共享的变量,但是实例对象只能访问,不可修改,每个实例对象去访问同一个类变量都将得到相同结果【实例名.类变量名】3、新增、修改、删除类变量n,不会影响到同名实例变量n4、类无权访问实例变量5、类变量可修改、新增、删除Python类变量转载 2021-05-11 10:06:32 · 470 阅读 · 0 评论 -
Pandas 查询筛选数据
Pandas 查询筛选数据《Pandas 教程》 修订中,可作为 Pandas 入门进阶课程、Pandas 中文手册、用法大全,配有案例讲解和速查手册。提供建议、纠错、催更等加作者微信: sinbam 和关注公众号「盖若」ID: gairuo。查看更新日志。数据有选择是 Pandas 最基础的使用,我们通过各种条件的组合可以模拟 Excel 的筛选操作。Pandas 也能实现类似列表的切片的操作。注:本文所使用的 df 和 s 是数据信息一文中的数据。数据检查我们一拿到数据需要对数据有一个抽查,一转载 2021-05-07 16:15:54 · 798 阅读 · 0 评论 -
pandas.read_csv 详细介绍
pandas.read_csv 详细介绍《Pandas 教程》 修订中,可作为 Pandas 入门进阶课程、Pandas 中文手册、用法大全,配有案例讲解和速查手册。提供建议、纠错、催更等加作者微信: sinbam 和关注公众号「盖若」ID: gairuo。查看更新日志。pandas.read_csv 接口用于读取 CSV 格式数据文件,由于它使用非常频繁,功能强大参数众多,所以在这里专门做详细介绍, 我们在使用过程中可以查阅。读 Excel 文件等方法会有很多相同的参数,用法基本一致。语法它的语转载 2021-05-07 16:15:23 · 3241 阅读 · 0 评论 -
pandas处理to_csv后excel打开乱码
问题:用pandas读取origin.csv数据处理后,to_csv(‘utf-8’)生成 new.csv后,用excel打开乱码,用notepad查看原始csv编码’utf-8’,在notepad中查看new.csv也无乱码。然后一脸懵,这肯定不涉及不同编码格式乱用转换的问题。那咋整?正确的方法 utf_8_sigdf.to_csv('df.csv', encoding='utf_8_sig')感谢前人的分享,在此自己记录一下refhttps://blog.csdn.net/zhuzuwei/转载 2021-05-07 12:03:05 · 540 阅读 · 1 评论 -
【教程】PyCharm远程开发调试|python远程开发调试
简介解决痛点:Linux上py调试开发一直用python的pdb,类似gdb是纯命令行工具,开发调试效率低,还每次都win端vscode编写后再扔到Linux端用pdb调试,太难受了试用过vscode的remote插件,但在个人pc上没配成功,未知原因; 研发PC又禁了vscode,真tm作最终转移到pycharm远程调试开发为的就是达到在win端coding,达到Linux上调试运行的目的,不然本地与Linux上项目路径问题很难受。其实配置过程很简单,不愧是付费软件。主要是配置SFTP,配转载 2021-05-07 11:01:44 · 788 阅读 · 0 评论 -
Python3官方手册中文在线版
https://yiyibooks.cn/xx/python_352/index.html原创 2021-04-16 17:20:40 · 529 阅读 · 0 评论 -
Pandas中DataFrame基本函数高阶函数数学运算整理
【python】Pandas中DataFrame基本函数整理(全)转载 2021-04-16 16:50:27 · 224 阅读 · 0 评论 -
Pandas的read_csv函数参数分析
Pandas的read_csv函数参数分析函数原型pd.read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, fal转载 2021-04-16 11:02:46 · 296 阅读 · 0 评论 -
pandas中loc,iloc,ix,at,iat详解
阅读目录1. 数据筛选 2. csv操作 本博主要总结DaraFrame数据筛选方法(loc,iloc,ix,at,iat),并以操作csv文件为例进行说明回到顶部1. 数据筛选 a b c0 0 2 41 6 8 102 12 14 163 18 20 224 24 26 285 30 32 346 36 38 407 42 44 468 48 50 529 54 56 58转载 2021-04-15 11:55:06 · 528 阅读 · 0 评论 -
Python正则表达式实例详解
一、正则表达式语法正则表达式是用匹配或者描述字符串的工具。用处:a.判断字符串是否满足某个条件—判断输入的字符串是否是邮箱/手机号码。是否是ip地址b.提取满足条件的字符串c.字符串替换Python中通过re模块中相应的方法来支持正则表达式的匹配、查找和替换等功能from re import fullmatchfullmatch(正则表达式字符串, 字符串) —> 判断正则表达式和字符串是否完全匹配正则表达式字符串: 就是一个字符串,字符串中是正则表达式语法。r’正则表达式’正则转载 2021-04-14 20:31:16 · 5237 阅读 · 0 评论 -
MongoDB连接失败阻塞过久:MongoDB接口详解
MongoDB连接失败阻塞过久:MongoDB接口详解 执行启动操作后,mongodb 在输出一些必要信息后不会输出任何信息,之后就等待连接的建立,当连接被建立后,就会开始打印日志信息。标准 URI 连接语法:mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]mongodb:// 这是固定的格式,必须要指定。username:password原创 2021-04-09 19:16:27 · 1088 阅读 · 0 评论 -
Python多进程-进程间共享数据
Python多进程-进程间共享数据Python 多线程之间共享变量很简单,直接定义全局 global 变量即可。而多进程之间是相互独立的执行单元,这种方法就不可行了。不过 Python 标准库已经给我们提供了这样的能力,使用起来也很简单。但要分两种情况来看,一种是 Process 多进程,一种是 Pool 进程池的方式。Process 多进程使用 Process 定义的多进程之间共享变量可以直接使用 multiprocessing 下的 Value,Array,Queue 等,如果要共享 list,转载 2021-03-25 15:13:55 · 2337 阅读 · 0 评论 -
【python进阶】Python模块(跨目录)调用总结
文章目录 系统模块调用 自定义模块调用 跨目录模块调用 同级目录下子文件调用 同级目录之间的跨模块调用 万能调用方法 关于.pyc文件的一点理解 系统模块调用说到模块调用,大家应该都对import有个基本的了解,在项目里面非常常见的比如import time,from selenium import webdriver等,我们经常在python中通过from...import...或import...的语法可以引用一些系统.转载 2021-03-22 20:15:49 · 280 阅读 · 0 评论 -
使用 Python 操作 Git 版本库 - GitPython
使用 Python 操作 Git 版本库 - GitPythonGitPython 是一个用于操作 Git 版本库的 python 包,它提供了一系列的对象模型(库 - Repo、树 - Tree、提交 - Commit等)用于操作版本库中的相应对象。版本库对象 - Repo首先,使用包含 .git 文件夹的版本库路径创建 git.Repo 对象from git import Repo# 创建版本库对象repo = git.Repo(r'E:\Notes')然后便可以使用这个 Repo转载 2021-03-22 19:59:03 · 2333 阅读 · 0 评论 -
Python 独特用法总结(map、reduce、filter等)
Python 独特用法总结(map、reduce、filter等)Map 函数原型:map(function, sequence)作用是将一个序列通过分 function 映射到另一个序列。即对可迭代对象中的每一个元素应用function方法,将结果作为 list 返回。如下所示:>>> def add100(x):... return x+100...>>> hh = [11,22,33]>>> map(add100,hh转载 2021-03-09 20:35:35 · 84 阅读 · 0 评论 -
python 调试神器PySnooper使用方法
python 调试神器PySnooper使用方法Python之debug神器PySnooper使用方法(奇技淫巧)python调试器:PySnooper用法Python调试神器:PySnooper详细使用指南!原创 2021-03-09 15:18:04 · 156 阅读 · 0 评论 -
python执行系统命令后获取返回值的几种方式
第一种情况 os.systemos.system('ps aux')执行系统命令,没有返回值第二种情况 os.popen result = os.popen('ps aux') res = result.read() for line in res.splitlines(): print line执行系统命令,可以获取执行系统命令的结果第三种情况 subprocess.Popen p = subprocess.Popen('转载 2021-03-09 12:18:01 · 1327 阅读 · 0 评论 -
subprocess模块教程
Python的subprocess模块,用来创建和管理子进程(不是线程),并能够与创建的子进程的stdin,stdout,stderr连接通信,获取子进程执行结束后的返回码,在执行超时或执行错误时得到异常。subprocess模块,用来取代几个老的函数接口,包括:# subprocess replacement:os.systemos.spawn* # os.spawn* means spawn family funtions以上创建子进程的老接口,就不要再使用了。从Python3转载 2021-03-09 10:17:43 · 1429 阅读 · 0 评论 -
flask框架开启定时任务简单案例flask_apscheduler
from flask import Flask, requestfrom flask_apscheduler import APScheduler class Config(object): # 创建配置,用类 # 任务列表 JOBS = [ # { # 第一个任务 # 'id': 'job1', # 'func': '__main__:job_1', # 'args': (1, 2),转载 2021-03-01 21:58:07 · 357 阅读 · 0 评论 -
最完整的Python pdb调试用法
pdb — Python 的调试器源代码: Lib/pdb.pypdb 模块定义了一个交互式源代码调试器,用于 Python 程序。它支持在源码行间设置(有条件的)断点和单步执行,检视堆栈帧,列出源码列表,以及在任何堆栈帧的上下文中运行任意 Python 代码。它还支持事后调试,可以在程序控制下调用。调试器是可扩展的——调试器实际被定义为 Pdb 类。该类目前没有文档,但通过阅读源码很容易理解它。扩展接口使用了 bdb 和 cmd 模块。调试器的提示符是 (Pdb)。在调试器的控制下运行程序的典型原创 2021-01-15 23:39:42 · 2102 阅读 · 0 评论 -
Python之filecmp模块-文件目录比较
Python之filecmp模块的使用目录对比目录对比,通过filecmp(a,b[,ignore[,hide]])类创建一个目录比较对象用于比较文件夹,通过该类比较两个文件夹,可以获取一些详细的比较结果(如只在A文件夹存在的文件列表),并支持子文件夹的递归比较。dircmp提供了三个方法用于报告比较的结果:report():只比较指定文件夹中的内容(文件与文件夹)report_partial_closure():比较文件夹及第一级子文件夹的内容report_full_closure():递转载 2021-01-14 20:19:26 · 575 阅读 · 0 评论 -
Python: 读写文本文件, read()、readline()、readlines(), 逐行读取,python操作文本
Python: 读写文本文件, read()、readline()、readlines(), 逐行读取,python操作文本读写文件是最常见的 IO 操作。通常,我们使用input从控制台读取输入,使用print将内容输出到控制台。实际上,我们也经常从文件读取输入,将内容写到文件。读文件在 Python 中,读文件主要分为三个步骤:打开文件 读取内容 关闭文件一般使用形式如下:1 try: 2 f=open('/path/to/file'...转载 2021-01-13 21:24:08 · 1940 阅读 · 0 评论 -
Python第三方package包pip快速备份与恢复
首先要装好 pip将安装过的第三方库记录到requirements.txtpip freeze > requirements.txtrequirements .txt 如下前面时库名,后面是版本恢复的时候只需键入如下命令sudo pip install -r requirements 加上sudo是因为可能有的时候会因为权限不够出现error具体requirements.txt可以参见官网信息 http://www.pip-installer.org/en/latest/requir转载 2021-01-02 11:05:47 · 4022 阅读 · 0 评论 -
Python Flask Web 框架入门--Linux下
https://www.cnblogs.com/momoyan/p/11028458.html转载 2020-12-19 14:35:22 · 91 阅读 · 1 评论 -
基于Pycharm轻松创建Flask项目
基于Pycharm轻松创建Flask项目需要pycharm专业版,社区版是没有项目模板的,也可以手动创建这几个文件夹完成模板的创建。打开Pycharm的file,选择创建新的项目,然后弹出对话框,我们可以看到里面有很多的案例,Flask、Django等等,我们选择生成Flask的demo程序选择创建之后一个简易的Flask项目就出现在我们眼前,第一个是入口程序,还有一个static的静态目录,templates是模板存放的位置我们可以手动来启动这个Flask项目,但是这不是很理智的,在Pych转载 2020-12-19 14:33:01 · 998 阅读 · 1 评论 -
Python数据可视化神器pyecharts及示例
Python数据可视化神器pyecharts及示例环境配置官方示例效果pyecharts 代码 / 效果Python 资源大全中文版原创 2020-12-19 14:29:13 · 112 阅读 · 1 评论 -
python中父进程与子进程
最近在使用python中的multiprocessing模块时遇到一些问题,很多人应该遇到相同问题,简单研究下,供有需要的参考。首先,要明白multiprocessing的出现很大程度是为了解决python GIL锁带来的多线程低效问题,其次,注意Windows上和Linux上的进程、线程行为不一致。那么我们常遇到的问题如下:1.父进程开新的子进程完成任务,父进程关闭时,必须关闭子进程2.父进程被强制关闭时,子进程也必须关闭3.子进程被强制关闭时,父进程也必须关闭4.父子进程没必然联系,关闭互不转载 2020-10-31 14:41:48 · 1668 阅读 · 0 评论 -
主进程被杀死时,如何保证子进程同时退出,而不变为孤儿进程(一)
主进程被杀死时,如何保证子进程同时退出,而不变为孤儿进程(一)python进程池剖析(二) 在Python中,由于全局解释器锁GIL的存在,使得Python中的多线程并不能大大提高程序的运行效率(这里单指CPU密集型),那么在处理CPU密集型计算时,多用多进程模型来处理,而Python标准库中提供了multiprocessing库来支持多进程模型的编程。multiprocessing中提供了的Process类用于开发人员编写创建子进程,接口类似于标准库提供的threading.Thread类,还提转载 2020-10-31 14:39:58 · 1308 阅读 · 0 评论 -
Python多进程包multiprocessing基本用法
Python提供了非常好用的多进程包multiprocessing,借助这个包,可以轻松完成从单进程到并发执行的转换。multiprocessing模块提供了一个Process类来创建一个进程对象。(也就是说Process类中把进程对象该有的特征都写入了,有了Process类,方便我们创建进程对象)Process(target,name,args)参数介绍:-target 表示调用对象,即子进程要执行的任务-args 表示调用对象的位置参数元组-name 子进程的名称from multipr转载 2020-10-31 12:05:04 · 704 阅读 · 0 评论 -
Python多进程Process、Pool的使用总结
Python多进程Process、Pool的使用总结序. multiprocessing包python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。Python提供了非常好用的多进程包multiprocessing,只需要定义一个函数,Python会完成其他所有事情。借助这个包,可以轻松完成从单进程到并发执行的转换。进程池Pool模块接口说明拆分任务一提高执行效率时,独立多进程apply_async(),通过列表解析添加子任务,是最优原创 2020-10-28 17:21:27 · 1847 阅读 · 0 评论 -
python捕获异常及方法总结
python捕获异常及方法总结try-except-else-finally 语句原理调试Python程序时,经常会报出一些异常,异常的原因一方面可能是写程序时由于疏忽或者考虑不全造成了错误,这时就需要根据异常Traceback到出错点,进行分析改正;另一方面,有些异常是不可避免的,但我们可以对异常进行捕获处理,防止程序终止。1 异常类型1.1 Python内置异常Python的异常处理能力是很强大的,它有很多内置异常,可向用户准确反馈出错信息。在Python中,异常也是对象,可对它进行操作。Ba转载 2020-10-28 17:11:42 · 463 阅读 · 0 评论 -
Python3闭包与复杂参数
函数收集参数*args, 默认参数参考print()函数原型print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)闭包与nonlocaldef func1(): x = 5 def func2(): nonlocal x # 用于在内嵌函数中引用外层函数的变量,类似global x *= x return func2()汉诺塔def hanoi(n, x, y, z): if n==原创 2020-07-15 00:10:24 · 126 阅读 · 0 评论 -
Python3善用帮助文档
查看某个具体函数的描述brieffunc.__doc__>>> max.__doc__'max(iterable, *[, default=obj, key=func]) -> value\nmax(arg1, arg2, *args, *[, key=func]) -> value\n\nWith a single iterable argument, return its biggest item. The\ndefault keyword-only argument原创 2020-07-15 00:09:10 · 128 阅读 · 0 评论 -
Python3字符串格式化format
字符串格式化formatcase1 位置参数>>> "{0} love {1}.{2}".format("I", "FishC", "com")'I love FishC.com'case2 关键字参数>>> "{a} love {b}.{c}".format(a="I", b="FishC", c="com")'I love FishC.com''{0:.1f}.{1}'.format(27.658,"GB")'27.7.GB'>>&原创 2020-07-15 00:07:19 · 408 阅读 · 0 评论 -
Python3 面向对象
面向对象私有和公有Python中采用name mangling(名字改编,名字重整)定义私有变量只需要在变量名或函数名前加上"_"两个下划线,那么这个函数或变量就会为私有的。>>> class Person:... __name = "abs"... >>> p = Person()>>> p<__main__.Person object at 0x7f6a67da3f98>>>> type(p原创 2020-07-15 00:05:01 · 142 阅读 · 0 评论 -
Python3魔法方法入门
魔法方法魔法方法总是被双下划线包围,例如__init__魔法方法是面向对象Python的一切,如果你不知道魔法方法,说明你还没意识到面向对象Python的强大__init____del____new__自定义对象的算术运算符__add____sub____mul____truediv____mod____divmod____pow____lshift____and____xor____or__这些都是以基础内置类型作为蓝本进行定制修改。如int,可以查看内置方法i原创 2020-07-15 00:03:11 · 138 阅读 · 0 评论 -
Python3 集合collections与itertools介绍outline
有用的collections及内建函数enumerate函数对一个列表或数组既要遍历索引又要遍历元素时case 1 for索引方式l = [1,2,3,4]for i in range(len(l)): print(i, l[i])enumerate方法enumerate会将数组或列表组成一个索引序列。使再次获取索引和索引内容的时候更加方便for index, text in enumerate(l): print(index, text)集合模块collections原创 2020-07-08 00:06:40 · 252 阅读 · 0 评论 -
Python3序列化 反序列化 pickling
序列化 反序列化 pickling数据从内存 <----> 持久化存储到磁盘中import pickled = dict(name='sicong', age = 29, score=80)str = pickle.dumps(d) # 调用pickle的dumps函数进行序列化处理定义和创建一个file文件对象来序列化f = open('dump.txt','wb')将内容序列化写入到file.txt文件中pickle.dump(d, f)f.close()相似原创 2020-07-08 00:01:18 · 170 阅读 · 0 评论