
Python
COCO56(徐可可)
河南省淮阳中学14级学生,平顶山学院17级软件工程游戏开发方向徐可可,现处于求职状态,希望能够获得一份儿Python相关的工作,有事儿请内信或者在文章下方评论。
展开
-
Python线程超时自动终止 | Python利用ThreadPoolExecutor实现对多线程的超时自动终止 | Python3实现单线程超时自动强制停止
如果我们想要停止某一个线程,那只能把该线程所在的线程池关闭,但关闭线程池会导致线程池里的所有线程全部关闭。所以,如果想用ThreadPoolExecutor实现对某一线程的超时自动终止的话,那在使用时应该在一个线程池里只放一个线程,这样的话,我们后续想要关闭某个线程只需要把该线程所在的线程池关闭就可以了。下面的代码是一个线程池放了两个线程,只是为了让大家明白,当关闭线程池时所有在该线程池里的线程都会停止,在实际应用时,建议一个线程池只放一个线程,这样再想关闭某个线程时就可以放心地把整个线程池关闭了。原创 2022-12-18 09:48:20 · 11081 阅读 · 4 评论 -
使用Python自动发送微信信息【附自动恋爱系统】
文章目录按简单案例自动恋爱系统按主要借助PyAutoGUI实现,因此需要先安装PyAutoGUIpip install PyAutoGUI以下是PyAutoGUI的官方资料:https://pypi.org/project/PyAutoGUI/https://pyautogui.readthedocs.io/en/latest/https://github.com/asweigart/pyautogui简单案例以下代码用于实现发送你好,程序会通过快捷键先打开微信主界面,然后搜索目标联原创 2022-05-28 19:36:27 · 2135 阅读 · 1 评论 -
Python3 借助pywin32模块获取Windows当前和所有窗口正在运行的应用程序信息
安装pywin32请参考:https://coco56.blog.youkuaiyun.com/article/details/102231139文章目录获取Windows当前窗口的应用程序信息获取Windows所有窗口的应用程序信息获取Windows当前窗口的应用程序信息import win32guicurrent_window = win32gui.GetForegroundWindow()classname = win32gui.GetClassName(current_window)title =原创 2022-05-11 11:14:34 · 7512 阅读 · 0 评论 -
【已解决】Django models没找到objects属性 | 使用Pycharm在调试Django项目时对象.objects不提示并且显示为淡黄色的解决办法
给继承自models.Model的类添加一句objects = models.Manager()即可,实例代码如我的models.py文件:from django.db import models# Create your models here.class Book(models.Model): objects = models.Manager() # 避免后续IDE找不到objects属性 # id = models.IntegerField() # 自动创建 na原创 2022-05-03 22:26:18 · 4604 阅读 · 7 评论 -
Python3 str.split方法
描述:Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串语法:str.split(sep=None, maxsplit=-1)参数sep:用于指定分隔符,可以包含多个字符。此参数默认为 None,表示所有空字符,包括空格、换行符“\n”、制表符“\t”等。maxsplit:可选参数,用于指定分割的次数,最后列表中子串的个数最多为 maxsplit+1。如果不指定或者指定为 -1,则表示分割次数没有限制。返回值:返回分割后的字符.原创 2022-04-26 23:02:35 · 698 阅读 · 0 评论 -
Python3使用动态规划处理01背包问题
文章目录视频教程讲解题目介绍题解1:二维列表题解2:一维列表(滚动数组)延伸阅读视频教程讲解【Python算法系列】动态规划2-01背包问题&完全背包问题【Python算法实战】背包问题题目介绍原题链接:NC145 01背包描述已知一个背包最多能容纳体积之和为v的物品现有 n 个物品,第 i 个物品的体积为 vi , 重量为 wi求当前背包最多能装多大重量的物品?数据范围: 1≤v≤1000,1≤n≤1000,1≤vi≤1000,1≤wi≤10001 \le v \le 1原创 2022-04-26 20:11:48 · 2465 阅读 · 0 评论 -
python通过map函数把列表内元素全部变成int
s = ['1', '2', '3']list_int = list(map(int, s))print(list_int)map() 会根据提供的函数对指定序列做映射。语法:map(function, iterable, ...)参数:function – 函数iterable – 一个或多个序列返回值Python 2.x 返回列表。Python 3.x 返回迭代器。...原创 2022-04-24 09:51:43 · 2615 阅读 · 0 评论 -
Python3使用exec函数将输入进来的结果的字符串的值解包成变量的值
先看一下exec函数在命令行中的简单效果示例,完成对某个变量的赋值操作,使一个字符串的值和放在代码里运行没有区别:>>> exec('bed=5')>>> bed5>>> exec('bedict={}')>>> bedict{}假定输入的值为10, 2, [[1, 3], [10, 4]],那么我们想要通过解包为V, n, vw这三个变量赋值,那么相应的代码为:# V, n, vw = 10, 2, [[1, 3]原创 2022-04-24 20:04:28 · 1592 阅读 · 0 评论 -
Python打印二维列表
综合利用join和split方法使二维列表打印后更加美观,每一行是二维列表里的每一个子列表dp = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]table = [str(',\t'.join(str(row).split(','))) for row in dp]print('\n'.join(table))结果:[0, 1,原创 2022-04-24 20:42:25 · 3175 阅读 · 0 评论 -
用Python3实现排列组合
文章目录认识排列与组合用代码实现考虑顺序的排列用代码实现不考虑顺序的组合认识排列与组合排列组合是组合学最基本的概念。所谓排列(Permutation),就是指从给定个数的元素中取出指定个数的元素进行排序。组合(Combination)则是指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。比如我们要实现1,2,3的排列组合,我们可以很容易写出来,如下表:任意选取的方式待取的元素任意选取1个元素任意选取2个元素任意选取3个元素考虑顺序(排列)1231,2,312,2原创 2022-04-24 09:11:45 · 3774 阅读 · 0 评论 -
【已解决】Python 列表对象使用remove方法在以迭代的方式遍历时没有正常删除某些元素导致元素泄露 | Python3 在迭代列表对象时使用remove方法注意事项
文章目录1. 问题重现2. 解决方法1. 问题重现需求:在以迭代的方式遍历列表对象时使用remove方法删除指定元素结果:发生元素泄露,某些元素没有按照预想的效果被删掉下面是问题代码:# 列表里原有的元素li = [1, 2, 3, 4, 5]# 需要保留的指定元素filters = [1, 3]for i in li: if i not in filters: li.remove(i)打印结果预想的应该是[1, 3],但其实是[1, 3, 5],里面的5发生了泄原创 2022-04-15 16:25:45 · 828 阅读 · 1 评论 -
【已解决】Python3在删除字典元素时提示RuntimeError: dictionary changed size during iteration
文章目录1. 问题重现2. 解决方案2.1. 把所有键先转成列表或集合保存后再删除2.2. 把待删除的键先转成列表或集合保存后再删除1. 问题重现问题代码dic = {'a': 1, 'b': 0, 'c': 1, 'd': 0}filters = ["a", "c"]for k in dic: if k not in filters: dic.pop(k)print(dic)根据pep-0234/所述,我们可以知道字典在遍历时不能进行修改,所以当我们在遍历字典时,因原创 2022-04-14 21:10:04 · 824 阅读 · 0 评论 -
【已解决】ModuleNotFoundError: No module named ‘snmp_cmds‘ 缺少snmp-cmds包
snmp-cmds官方主页:pypi、github安装方法:安装Python包snmp-cmdspip3 install snmp-cmds注意:需要Python 3.5+安装net-snmp-utils,CentOS 7的安装方式如下:yum install net-snmp-utils -y这步必须要做,否则会提示:ImportError: Net-SNMP does not appear to be installed on this system, or the Net-SNMP c原创 2022-04-13 17:48:52 · 1490 阅读 · 0 评论 -
【已解决】ImportError: Net-SNMP does not appear to be installed on this system, or the Net-SNMP commands
只使用pip安装snmp-cmds>=1.0后提示:ImportError: Net-SNMP does not appear to be installed on this system, or the Net-SNMP commands are not on your PATH这是因为调试代码的机器上没有安装net-snmp-utils,CentOS 7的安装方式如下:yum install net-snmp-utils -y乌班图可以尝试:Net-SNMP (can be ins原创 2022-04-13 17:39:16 · 617 阅读 · 0 评论 -
使用Python批量去除txt文件中的首行内容以及最后一个空行
文章目录1. 按2. 代码1. 按目标文件夹中有很多文件夹和txt文件,这些txt文件中的第一行内容需要去除,最后一行是个空行,也需要去除,之前尝试使用bat脚本处理后会出现乱码,所以改用Python来进行批处理。2. 代码import osfor root, dirs, files in os.walk(r'D:\Program Files\feiq\Recv Files\QGQHDM_20211231'): for i in files: txt = os.path原创 2022-01-19 19:41:35 · 3092 阅读 · 0 评论 -
Python3 Socket编程案例:UDP与TCP
文章目录1. 按2. UDP案例源码2.1. 客户端2.2. 服务器端2. TCP案例源码2.1. 客户端2.2. 服务器端1. 按在Python中socket.SOCK_DGRAM用于UDP通信,socket.SOCK_STREAM用于TCP通信2. UDP案例源码客户端可以向服务器端主动发送信息2.1. 客户端import socketBUF_SIZE = 1024 # 设置缓冲区server_addr = ('127.0.0.1', 8888) # IP和端口构成表示地址cli原创 2021-12-04 22:45:41 · 3082 阅读 · 0 评论 -
使用Pip安装和卸载PyTorch(CUDA版)
使用Pip安装CUDA11.6版的PyTorch的命令如下:原创 2021-10-14 12:48:22 · 14887 阅读 · 3 评论 -
Python 从字符串中提取URL(使用功能完善的第三方库而非自己写的简陋的正则表达式)
按我们在使用Python从文本中提取URL时,其实可以安装功能已经相对完善的第三方库urlextract,而不用自己费力不讨好去编写正则表达式。自己想法设法编写的正则表达式,结果在实际应用时却发现有的情况还是没有考虑到,导致提取出来的URL并不对。Pypi:https://pypi.org/project/urlextract/文档:https://urlextract.readthedocs.io使用帮助提取URL从文本Text with URLs. Let's have URL janl原创 2021-08-12 09:54:49 · 4695 阅读 · 2 评论 -
使用Python获取Windows中的变量值
文章目录1. 按2. 读取变量1. 按我们可以在Windows的环境变量中存储一些信息,比如我下面的存储自己的MySQL密码,后续在工程中可以直接读取自己的密码,且把这些工程上传到GitHub中不用担心由于自己的失误造成密码泄露(因为密码没有存储在源码中)。注意:新建变量后应重启电脑之后才能访问(后期如果修改变量的值没有生效,也可以重启下电脑)2. 读取变量我们可以使用os.getenv读取变量,实际案例如下:import osprint(os.getenv('MySQLPW'))该函原创 2021-06-04 15:19:18 · 624 阅读 · 0 评论 -
Python动态打印字符,在一个位置动态出现多条信息
文章目录1. 动态打印三条时间信息2. 重写睡眠函数实际案例如下:1. 动态打印三条时间信息def t_clock(): cnt = 0 import time while True: s = time.asctime() print(s[11:19],end="") time.sleep(1) cnt += 1 if(cnt>=3): return p原创 2021-06-03 19:56:48 · 875 阅读 · 0 评论 -
如何使用PyCharm自动生成requirements.txt
文章目录1. 按2. 操作步骤1. 按虽然我们可以使用pip3 freeze > requirements.txt命令自动生成requirements.txt文件,但会发现此时requirements.txt里的模块则是你电脑上所有安装的模块。如果我们想要生成的requirements.txt里的模块刚好是某个模块所要用到的,则可以使用PyCharm生成。2. 操作步骤官方帮助文档使用Python打开自己的工程,然后点击Tools,最后点击Sync Python Requirements原创 2021-06-01 21:01:30 · 34682 阅读 · 4 评论 -
twine upload设置账号和密码,避免每次都输账号和密码
如果使用twine经常上传文件,且不想每次都输入账号和密码的话可以使用-u和-p参数来指定你的PyPI账号及密码,如:twine upload -u coco56 -p password dist/*更多twine的用法请参考:https://twine.readthedocs.io/en/latest/...原创 2021-06-01 20:04:12 · 1503 阅读 · 0 评论 -
Python 制作、发布与安装模块
文章目录1. 按2. 设置模块(.py文件)和包(文件夹)2.1. 创建目录和文件2.2. 设置setup.py文件的内容2.3. 设置test.py文件的内容2.4. 设置\__init__文件的内容3. 本地使用3.1. 构建模块3.2. 安装模块3.3. 卸载模块4. 联机使用4.1. 生成requirements.txt4.2. 打包成wheel文件4.3. 上传到[PyPI](https://pypi.org/)4.4. 安装模块4.5. 卸载5. 参考1. 按本文包含使用Python制作、发原创 2021-05-30 17:16:28 · 737 阅读 · 6 评论 -
Python彩色图片转成黑白图片
以下程序运行会将当前目录下的所有.jpg与.png文件进行转换# 图片二值化from PIL import Imageimport osdef convertToGrayImg(imagePath): img = Image.open(imagePath) # 模式L”为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。 Img = img.convert('L') fName, fExName = os.path.split原创 2021-04-04 08:02:33 · 2682 阅读 · 1 评论 -
Python从vcf文件中读取手机号并进行去重操作
文章目录1. Python代码2. test.vcf文件内容1. Python代码file = open('test.vcf', 'r', encoding='utf-8')tels = []for line in file: line = line.strip('\n') contents = line.split(':') if contents[0] == 'TEL;TYPE=CELL': print(contents[1]) tels.原创 2020-12-22 15:51:13 · 1646 阅读 · 0 评论 -
Python将str转换为路径类型?(Python convert a str to path type?)
文章目录1. 按2. 使用案例3. 测试案例3.1. 代码3.2. 结果1. 按在Python3.4+中,我们可以使用pathlib模块中的Path类方法进行转换,关于pathlib模块的更多介绍,可以参考:https://docs.python.org/3/library/pathlib.html#module-pathlib2. 使用案例from pathlib import Pathstr_path = "my_path" # eg: str_path = "D:\360Downloads原创 2020-10-14 11:16:25 · 14198 阅读 · 0 评论 -
在Windows上为Python3安装tkinter模块
文章目录1. 按2. 操作步骤1. 按运行pip install tkinter会提示ERROR: Could not find a version that satisfies the requirement tkinter (from versions: none)ERROR: No matching distribution found for tkinter我们可以选择在安装Python3时进行勾选安装tkinter模块2. 操作步骤下载Python3的安装包,我下的时Pyt原创 2020-10-04 21:09:55 · 9613 阅读 · 4 评论 -
使用Python清除多个Cocos Creator工程中的所有临时文件
文章目录1. 按2. 说明3. 代码3.1. `clearCocosCreator.bat`3.2. `clearCocosCreator.py`1. 按关于Cocos Creator工程的Git配置,可以参考:Cocos Creator工程 .gitignore的配置2. 说明新建一个文件夹,里面存储多个Cocos Creator工程,然后把脚本放到该目录下,运行即可把所有Cocos Creator工程里的所有临时文件全部清除(如果该工程正在使用Cocos Creator打开,则需要先关闭该工程)原创 2020-10-02 20:20:30 · 777 阅读 · 0 评论 -
使用Python3清理电脑内的重复文件
文章目录1. 按2. 代码1. 按判断两个文件是否相同需要用到filecmp模块:filecmp.cmp(f1, f2, shallow=True)比较名为f1和f2的文件,如果它们似乎相等则返回True,否则返回False如果shallow为真,那么具有相同os.stat()签名的文件将会被认为是相等的。否则,将比较文件的内容。遍历获取所有文件的绝对路径,我们可以利用glob模块的通配符结合recursive参数即可完成,框架如下:for file in glob.glob(path +原创 2020-09-01 00:01:33 · 491 阅读 · 0 评论 -
使用Python借助pymediainfo读取视频文件的详细信息
文章目录1. 按2. 代码3. 输出结果1. 按对于mp4文件,目前已测试在Windows10上设置后支持显示的的详细信息有:标题(title)、备注(comment)、流派(genre)、作曲者(composer)如需查看更多的详细信息,可以参考本文自己进行编写Python代码来查看。如需编程批量设置视频文件的详细信息,可以参考:使用FFmpeg设置视频文件的详细信息2. 代码安装pymediainfo可以参考:Python3安装pymediainfofrom pymediainfo im原创 2020-08-26 19:52:07 · 7985 阅读 · 1 评论 -
Python3安装pymediainfo
文章目录1. 安装2. 使用帮助1. 安装pip3 install pymediainfo上条命令默认情况下访问的下载网站是https://pypi.Python.org/simple/,这是一个国外网站,速度可能比较慢。如果使用国外的源下载速度慢,我们可以使用国内源进行提速:豆瓣源pip3 install pymediainfo -i https://pypi.douban.com/simple清华大学源pip3 install pymediainfo -i https://pypi.原创 2020-08-26 18:59:54 · 2882 阅读 · 0 评论 -
Python使用OpenPyXl设置Excel表格中的单元格大小(行高和列宽)
文章目录1. 按2. 设置单行和一列的长和宽3. 设置所有行和全部列的长和宽1. 按本文主要讨论 openpyxl如何设置(调整)单元格大小(行高和列宽),其他功能可参考:Python3 进行读取、修改和写Excel表格(.xlsx文件)的常用功能示例2. 设置单行和一列的长和宽from openpyxl import load_workbook wb = load_workbook('test.xlsx')print(wb.sheetnames)ws = wb[wb.sheetnames[原创 2020-08-26 13:01:28 · 35916 阅读 · 2 评论 -
使用OpenPyXl进行Excel表格(.xlsx)文件的字母列号与数字列号之间的转换
更多功能请可参考:Python3 进行读取、修改和写Excel表格(.xlsx文件)的常用功能示例根据列的数字返回字母 get_column_letter根据字母返回列的数字 column_index_from_string原创 2020-08-26 12:36:09 · 3195 阅读 · 1 评论 -
Python3输出所有大小写字母(字母表)、数字
print([chr(i) for i in range(65,91)])#所有大写字母print([chr(i) for i in range(97,123)])#所有小写字母print([chr(i) for i in range(48,58)])#所有数字['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',原创 2020-08-26 12:12:34 · 5221 阅读 · 0 评论 -
Python3安装xlrd
pip3 install xlrd上条命令默认情况下访问的下载网站是https://pypi.Python.org/simple/,这是一个国外网站,速度可能比较慢。如果使用国外的源下载速度慢,我们可以使用国内源进行提速:豆瓣源pip3 install xlrd -i https://pypi.douban.com/simple清华大学源pip3 install xlrd -i https://pypi.tuna.tsinghua.edu.cn/simple更多关于提速的解决方案请参原创 2020-08-26 10:55:52 · 3458 阅读 · 0 评论 -
OpenCV+Python制作硬核七夕(情人节)礼物
文章目录1. 按2. 配置环境3. 原理解读3.1. 读取Excel表格3.2. OpenCV读取图像并显示4. 完整代码5. 最后一步!超重要1. 按不知不觉七夕就过去了!如果有对象,祝早生贵子!没有对象,祝早结连理!(搞笑一下,祝大家幸福美满吧,嘿嘿嘿)给大家准备了一份已经写好的代码,利用Python+OpenCV+OpenPyXl,OpenCV实现读取图片像素颜色,然后OpenPyXl自动填充Excel表格对应单元格背景颜色,得到一副Excel填充图画。先来看看效果叭(gif动图)!把原创 2020-08-26 10:48:38 · 857 阅读 · 0 评论 -
Python3安装openpyxl
文章目录1. 安装2. 使用帮助1. 安装pip3 install openpyxl上条命令默认情况下访问的下载网站是https://pypi.Python.org/simple/,这是一个国外网站,速度可能比较慢。如果使用国外的源下载速度慢,我们可以使用国内源进行提速:豆瓣源pip3 install openpyxl -i https://pypi.douban.com/simple清华大学源pip3 install openpyxl -i https://pypi.tuna.tsin原创 2020-08-26 10:32:30 · 19336 阅读 · 0 评论 -
解决Python安装第三方库太慢的问题
文章目录1. 按2. 临时生效的配置3. 永久生效的配置3.1. 自动配置3.2. 手动配置1. 按今天在升级下载Python第三方库的时候特别慢,最后去升级pip的时候竟然还time out了,哇心态炸了。问题想清楚了该怎么解决呢?咱们可以用国内的镜像源啊,于是我在网上搜了一下国内的镜像源。哇还真不少呢。阿里云:https://mirrors.aliyun.com/pypi/simple/清华:https://pypi.tuna.tsinghua.edu.cn/simple豆瓣:http原创 2020-08-25 23:20:42 · 2335 阅读 · 0 评论 -
Python 根据进程名获取进程所占内存的大小
文章目录1. 按2. 代码1. 按需要安装psutil库,安装请参考:Python3 安装psutilpsutil · PyPIpsutil · GitHub2. 代码import psutildef getMemSize(pid): # 根据进程号来获取进程的内存大小 process = psutil.Process(pid) memInfo = process.memory_info() return memInfo.rss / 1024 / 1024原创 2020-08-25 20:57:16 · 2776 阅读 · 2 评论 -
Python3 安装psutil
pip3 install psutil如果使用国外的源下载速度慢,我们可以使用国内的源进行提速:豆瓣源pip3 install psutil -i https://pypi.douban.com/simple清华大学源pip3 install psutil -i https://pypi.tuna.tsinghua.edu.cn/simple...原创 2020-08-25 20:53:56 · 1516 阅读 · 0 评论