Python
人工智能-肥鹅
这个作者很懒,什么都没留下…
展开
-
python中对象赋值、引用与拷贝的理解与应用
当你将一个变量赋值给另一个变量时,实际上是将一个对象的引用(内存地址)赋给了另一个变量,而不是创建了一个新的对象。因此,这两个变量将指向相同的内存地址,修改其中一个变量的值将会影响另一个变量的值。有时你想要复制一个对象而不是共享它,改变其中一个的值,另一个的值不受影响。有时候对象是嵌套的,而你想要创建一个完全独立的副本,即使原始对象是嵌套的,也不想共享任何内部对象。深度拷贝会递归地复制所有嵌套对象。注意:copy()方法只会创建一个浅拷贝,即只会复制顶层对象,而不会递归地复制嵌套对象。原创 2024-03-29 00:38:10 · 564 阅读 · 0 评论 -
python多进程数据共享
multiprocessing.Manager 是 Python 的 multiprocessing 模块中的一个类,它提供了一种方便的方法来创建共享对象,这些共享对象可以被多个进程安全地访问和修改。使用 Manager 可以解决多进程并发访问共享资源时的同步问题。原创 2024-03-13 12:17:34 · 1009 阅读 · 0 评论 -
PyQt中线程和线程信号的使用
PyQt中的线程和线程信号是用于在应用程序中实现多线程编程的重要概念。线程允许你在应用程序中同时执行多个任务,而线程信号用于在不同线程之间进行通信和协调。线程的信号连接到主窗口的槽函数,以在线程发出信号时执行相应的操作。这个示例展示了如何使用线程和线程信号来执行后台任务并更新主应用程序的界面。,分别用于通知线程完成和报告进度。方法中发出进度信号,并在完成时发出完成信号。主窗口中的按钮通过调用。原创 2023-10-14 19:44:53 · 715 阅读 · 8 评论 -
python3 对ini文件的读取与写入
python3 对ini文件的读取与写入原创 2022-07-14 15:50:04 · 762 阅读 · 0 评论 -
python3生成MD5值方法与坑
一、生成MD5或者:又或者:中文字符计算MD5:二、字符转字节:或者:遇到的坑:使用第一种方法时生成多个MD5,m = hashlib.md5() 这句一定要写在for循环内,否则只有第一次生成的MD5值是对的,后面的值都是错误的。......原创 2022-06-23 13:41:54 · 1865 阅读 · 0 评论 -
python 大数据入门之pandas
作为一名全栈程序员,广种薄收,我也很苦恼,但是又没有办法,自己是块砖,哪里需要哪里搬。公司领导一直让我搞大数据,就因为我会一点点python皮毛。人在矮檐下,只能硬着头皮再次学习新知识。大数据常用的三个库:1、numpy #科学计算基础软件包2、pandas # 一个强大的分析结构化数据的工具集3、matplotlib # 一个开源的数据绘图包一、安装:# 1、安装包$ pip install pandas.........原创 2022-03-22 11:01:02 · 210 阅读 · 0 评论 -
python3 遍历文件夹中文件及类型
import osif __name__ == "__main__": # os.getcwd() 方法用于返回当前工作目录。 rootdir = os.getcwd() # os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。 lists = os.listdir(rootdir) for i in range(0, len(lists)): #文件路径及类型 path = os.pa.原创 2021-03-27 14:11:38 · 297 阅读 · 0 评论 -
python3 解析XML
本文章仅做本人学习记录使用。一、xml介绍可扩展标记语言,标准通用标记语言的子集,简称XML。是一种用于标记电子文件使其具有结构性的标记语言。二、简单实例<!--它定义 XML 的版本(1.0)和所使用的编码(UTF-8 : 万国码, 可显示各种语言)。--><?xml version="1.0" encoding="UTF-8"?><!--根元素 文档必须包含根元素 并扩展到树的最底端--><note> <!--根的 5原创 2021-02-26 14:19:12 · 442 阅读 · 0 评论 -
Python3 OS文件/目录常用方法
一、先来几个小实例:1、返回当前所在路径:import osprint(os.getcwd()) # 获取当前工作目录路径#os.path.abspath() #返回绝对路径print(os.path.abspath('.')) # 获取当前工作目录路径print(os.path.abspath('test.txt')) # 获取当前目录文件下的工作目录路径print(os.path.abspath('..')) # 获取当前工作的父目录 !注意是父目录路径print(os.原创 2020-07-16 09:34:58 · 202 阅读 · 0 评论 -
python3 利用PyQt5、Qt Creator快速完成程序界面
一、简介:本文仅做为学习记录。PyQt5是基于图形程序框架Qt5的Python语言实现,由一组Python模块构成。PyQt5的官方网站是:www.riverbankcomputing.co.uk。PyQt5模块介绍的官网地址是:http://pyqt.sourceforge.net/Docs/PyQt5/introduction. htmlQt Creator是跨平台的 Qt I...原创 2020-03-26 12:00:47 · 1912 阅读 · 0 评论 -
python3 requests发送post表单multipart/form-data
昨天晚上和后端对接接口,他告诉我说data string,给我整懵了。因为我们的测试结果是一个json。res = requests.post("url",data=json.dumps(result))这样它不香嘛。折腾了老半天啊。发现python要发送multipart/form-data数据不能直接用requests.post。需要requests_toolbelt.MultipartEncoder首先安装:pip install requests_toolbeltdat原创 2020-06-05 09:25:11 · 2889 阅读 · 0 评论 -
python3 OpenCV 模板匹配多个图像
一、简介:上节课我们讲解了python 利用OpenCV进行图像匹配。并画出位置。但是图像中有多个相同图像,如何全部匹配到呢。二、导入需要的库import cv2 #导入opencv库import numpy as np这节需要用到numpy。numpy 支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。三、加载图像# 图片和路径请勿使用中文im...原创 2020-03-20 17:54:31 · 1964 阅读 · 0 评论 -
python3 OpenCV匹配图像之模板匹配
本文仅做为本人学习记录。一、简介:OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。今天我们就是用python学习OpenCV。...原创 2020-03-20 16:54:03 · 1341 阅读 · 1 评论 -
centos7安装python3.7.0记录
一、前言百度搜索其实有很多写这个的文章。但是我依然踩了很多坑。跟着一步一步做的依然不行。所以总结此文章如下。二、实战我的服务器操作系统:CentOS 7.6 64位我安装的python版本:python3.7.0首先我们要在centos操作系统中安装依赖包,具体的我也不懂。yum -y groupinstall "Development tools"yum -y in...原创 2019-08-08 14:46:32 · 166 阅读 · 0 评论 -
Python3 字符串前面加u,r,b的含义
1、字符串前加 u例:u"我是含有中文字符组成的字符串。"作用:后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。2、字符串前加 r例:r"\n\n\n\n” # 表示一个普通生字符串 \n\n\n\n,而不表示换行了。作用:去掉反斜杠的转义机制。(特殊字符:即那些,反斜杠加上对应字母,表示对应...原创 2020-01-17 15:38:51 · 587 阅读 · 0 评论 -
python3自动合并图像
一、前言:本文仅作个人学习历程记录。此次是为了做公司的医学图像。学校的扫描机器扫描后会输出一个临时文件夹,里面有N多JPG小图。现在需要讲小图按序列重新组合成一张大图。二、注意事项:这里需要注意的是jpg文件格式最大分辨率仅支持:65535*65535像素。如果需要更大分辨率建议换其他图像格式。例如PNG,但是同意面临一些问题。比如体积和jpg比会成几何增加。三、所需工具:PI...原创 2019-12-21 15:32:05 · 460 阅读 · 0 评论 -
python3验证码识别第一篇
一、前言:本文仅作为个人学习记录。二、环境安装:OCR,即 Optical Character Recognition,光学字符识别, 是指通过扫描字符,然后通过其形状将 其翻译成电子文本的过程。 对于图形验证码来说,它们都是一些不规则的字符,这些字符确实是由字 符稍加扭曲变换得到的内容。例如,对于下图所示的验证码,我们可以使用 OCR技术来将其转化为电子文本,然后爬虫将识别结果...原创 2019-11-20 12:50:48 · 179 阅读 · 0 评论 -
python3下载图片并放入剪切板
需要安装pywin32,pillow依赖包pip install pywin32pip install pillowimport win32clipboard as clipimport win32confrom io import BytesIOfrom PIL import Image''' 往剪贴板中放入图片'''def setImage(data):...原创 2018-09-18 15:45:37 · 2417 阅读 · 1 评论 -
python第三次采集数据小记之登录下载
一、模拟的原理,知道这些我们才可以继续写爬虫1. Cookie原理HTTP是无状态的面向连接的协议, 为了保持连接状态, 引入了Cookie机制Cookie是http消息头中的一种属性,包括:Cookie名字(Name)Cookie的值(Value)Cookie的过期时间(Expires/Max-Age)Cookie作用路径(Path)Cookie所在域名(原创 2017-08-21 09:20:41 · 317 阅读 · 0 评论 -
centos7 设置python3定时任务
一、前言1、最近写了一个爬虫放在了服务器上,想让他每天定时去采集更新数据。百度了很久终于摸清了centos下设置定时任务。2、我们需要先确定服务器安装了python3 与 crontab。python3在centos7的安装我前面有写过。crontab 默认是安装了的。可以直接输入crontab查看是否安装。在说crontab之前我要先给不熟悉linux的小伙伴说一下。liunx下默认...原创 2019-08-13 15:29:18 · 2082 阅读 · 0 评论 -
python3进阶之*args与**kwargs用法
*args 和 **kwargs 主要用于函数定义。 你可以将不定数量的参数传递给一个函数。不定的意思是:预先并不知道, 函数使用者会传递多少个参数给你, 所以在这个场景下使用这两个关键字。其实并不是必须写成*args 和**kwargs。 *(星号)才是必须的. 你也可以写成*ar 和**k. 而写成*args 和**kwargs只是一个通俗的命名约定.python函数传递参数的方式有两种...转载 2019-03-11 14:07:00 · 566 阅读 · 0 评论 -
python字符串操作
一、查找字符串python 字符串查找有4个方法,1 find,2 index方法,3 rfind方法,4 rindex方法。1 find()方法:查找子字符串,若找到返回从0开始的下标值,若找不到返回-1info = 'abca'print info.find('a')##从下标0开始,查找在字符串里第一个出现的子串,返回结果:0info = 'abca'print info...原创 2017-08-17 10:25:02 · 360 阅读 · 0 评论 -
Python读写数据库和乱码问题解决
无论是Python 或者是 PHP、JAVA读写数据库错误无非三个地方的编码格式不统一。一、语言编码二、数据库编码三、语言链接数据库编码这三个地方统一编码基本就不会出现乱码问题。当然前提是你要写入的数据本身不是乱码的。下面是Python设置数据库链接编码conn.set_character_set('utf8')cur.execute('SET NAMES utf8;')原创 2017-08-14 08:16:05 · 521 阅读 · 0 评论 -
selenium2.0关于python的常用函数(一)
新建实例driver = webdriver.Chrome()1.通过标签属性Id查找元素方法:find_element_by_id(element_id)实例:driver.find_element_by_id("iptUsername")2.通过标签属性name查找元素方法:find_element_by_name(element_name)实例:driver.find转载 2017-08-14 09:33:02 · 338 阅读 · 0 评论 -
selenium2.0关于python的常用函数(二)
新建实例driver = webdriver.Chrome()1.获取当前页面的Url函数方法:current_url实例:driver.current_url2.获取元素坐标方法:location解释:首先查找到你要获取元素的,然后调用location方法实例:driver.find_element_by_xpath("//*[@id='tablechart'转载 2017-08-14 09:37:22 · 239 阅读 · 0 评论 -
Python第一次采集数据小记
#coding:utf-8含义:该文件中的字符串都以utf8编码 首先用到了两个第三方库1、requests采集数据,获取页面内容2、BeautifulSoup主要用于搜索分析页面内容不会正则的孩子的福音#创建 requests对象response = requests.get("http://duodian.hneph.com/m_index.aspx")原创 2017-06-20 16:58:30 · 473 阅读 · 0 评论 -
python提取字符串中日期
import re#删除字符串中的中文字符def subChar(str): match=re.compile(u'[\u4e00-\u9fa5]') return match.sub('',str)#提取日期def extractDate(str): if not str: return None raw=subChar(str)转载 2017-11-21 14:48:18 · 5855 阅读 · 0 评论 -
python BeautifulSoup中文乱码问题
工作中采集某网站,到详情页时突然发现有一个页面是乱码。但其他的都正常,百思不得骑姐。百度了一下午啊,智商捉急的很。一直以为是requests 获取页面内容时造成的乱码。查询相关资料后发现res.apparent_encoding 返回的与页面中 charset 一致。后来想可能是BeautifulSoup 解析时出现了问题。用soup.original_encoding 获取编码时原创 2017-11-21 17:27:32 · 463 阅读 · 0 评论 -
Python导出为exe程序
一.pyinstaller简介pyinstaller将Python脚本打包成可执行程序,使在没有Python环境的机器上运行最新版是pyinstaller 3.1.1。支持python2.7和python3.3+。可运行在Windows,Mac和Linux操作系统下。但它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在L转载 2017-11-24 16:18:44 · 7859 阅读 · 1 评论 -
python使用lxml操作XML文件
首先是安装lxmlpip安装如下:pip install lxml1.生成空xml节点from lxml import etreeroot = etree.Element("root")print(etree.tostring(2.生成xml子节点from lxml import etreeroot = etree.Element("root")root原创 2017-11-27 14:11:17 · 2771 阅读 · 0 评论 -
python递归解析JSON
def print_keyvalue_all(self,input_json): key_value='' if isinstance(input_json,dict): #isinstance() 函数来判断一个对象是否是一个已知的类型 for key in input_json.keys(): #keys() 函数以列表返回一个字典所有的键。转载 2018-01-23 16:12:17 · 4536 阅读 · 0 评论 -
Python之pyexcel_xls读写Excel数据表
一、概述pyexcel-xls 以 OrderedDict 结构处理数据,将整个excel文件转化为一个OrderedDict (有序字典)结构:每个key就是一个子表(Sheet);每个子表(Sheet),转化为一个列表结构:很像二维数组,第一层列表为行(Row),行的下标为列(Column),对应的值为单元格的值;编码为 unicode,如果有中文必须进转载 2017-11-24 16:06:49 · 2978 阅读 · 0 评论 -
python3解析JSON之demjson
安装好python之后自带的就有一个json解析库使用 JSON 函数需要导入 json 库:import json。json.dumps 将 Python 对象编码成 JSON 字符串 json.loads 将已编码的 JSON 字符串解码为 Python 对象 但是有时我们会遇到不是很标准的JSON,这是这个库就无法解析了。例如:{0:"00000...原创 2018-01-29 10:22:28 · 3520 阅读 · 0 评论 -
Python3之pymysql模块
记录这篇文章的目的是提醒自己python3已经不再支持MySQLdb 了搜索半天,最终发现,多么痛的领悟啊!!!下面咱们来说PyMySQL一、什么是 PyMySQL?PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-...原创 2018-02-26 15:35:39 · 409 阅读 · 0 评论 -
Python3 调用谷歌翻译
话不多少,直接上代码,网上有很多案例,这只是其中一个。并且我已经测试过了。可用。这段代码需要先安装两个库,pip install termcolor # termcolor是一个python包,可以改变控制台输出的颜色pip install PyExecJS # execjs可以在python中运行javascript代码代码中用到了谷歌地址参数中tk的运算。基本都是用...原创 2018-10-16 13:47:58 · 1210 阅读 · 0 评论 -
python3 open函数与常见问题
open函数,该函数用于文件处理操作文件时,一般需要经历如下步骤:打开文件 操作文件一、打开文件 1 文件句柄=open('文件路径','模式') 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。打开文件的模式有:r,只读模式(默认)。 w,只写模式。【不可读;不存...原创 2018-10-27 00:24:36 · 2934 阅读 · 0 评论 -
python3 把\u开头的unicode转中文,把str形态的unicode转中文
python3 把unicode转中文,把str形态的unicode转中文 今天用py3.5爬东西的时候,爬到的是json格式,里面的中文还都是unicode的形式. 讲道理的话只要直接输出就可以了,类似这样的>>> print ("\u751F\u5316\u5371\u673A")生化危机>>>然而坑爹的是他返回的匹配的list是这样的...转载 2018-10-27 00:54:43 · 1396 阅读 · 0 评论 -
python第二次采集数据小记
有些网页右键查看网页源代码,里面没有要查找的数据,这是为什么呢?答案是:页面是由JS动态生成出来的。但是在审查元素中Elements中是有的。解决方案是 python 有一个第三方库 Selenium 可以模拟浏览器第一步 安装 Selenium在 cmd 中 打开python的Scripts目录 。输入python 回车输入 :pip install selenium安原创 2017-07-08 12:34:02 · 391 阅读 · 0 评论