
Python
qq_24499417
这个作者很懒,什么都没留下…
展开
-
xlwings遍历多个excel工作簿获取指定的单元格数据
# -*- coding: utf-8 -*-import globimport xlwings as xwx=glob.glob(r'D:\Python实践\测试报告\*.xls*')if len(x) : print(x) for y in x: wb=xw.Book(y) sht=wb.sheets[0] print(sht.range(...原创 2018-07-04 15:41:48 · 11830 阅读 · 0 评论 -
tkinter制作选择文件夹对话框
# -*- coding: utf-8 -*-"""Created on Wed Dec 12 20:12:17 2018@author: Fanxiaolei"""#tkinter制作选择文件夹并输出所在目录里的所有文件名称。from tkinter import Tkfrom tkinter import filedialogimport osimport globro...原创 2018-12-23 11:04:07 · 7766 阅读 · 0 评论 -
Python 1-9构成3个成加和关系的三位数的计算
题目:将1到9共9个数字构成3个3位数,刚好占用完1-9这九个数字。即:x+y=z(x,y,z均为>=100且<1000的三位数。且x,y,z刚好用完1到9这9个数字).我的思路。按照不重复的情况,假定x<y。则x<y<x+y=z<1000。2*x<x+y<1000,那么x<500的。我先抽取x这个三位数。def xint(): ...原创 2018-12-17 07:53:57 · 2133 阅读 · 0 评论 -
处理json中不带双引号的key的问题
在解析网页json数据的时候,我发现python标准库json模块无法加载数据。如下面数据:import jsons='{symbol:"sh600069",code:"600069",name:"银鸽投资",trade:"3.160",pricechange:"-0.030",changepercent:"-0.940",buy:"3.160",sell:&q原创 2018-12-19 21:59:32 · 18215 阅读 · 1 评论 -
xlrd批量读取xls格式excel文件数据。
如图使用xlrd批量整理数据资料。数据源如下: 要提取所有excel文件里的蓝色标记的资料到一张表里 ,效果如下: 主要采用了xlrd获取xls文件的单元格数据。后面用pandas存放数据并转成了excel文件。中间又加了一点多线程的东西。其实呢这个例子只有5个文件,用不用多线程没什么影响.速度都很快.,0.1秒就可以完成了。最近一直在一点点地学习,又怕忘了,只...原创 2018-12-05 21:18:56 · 1540 阅读 · 0 评论 -
python繁简体转换
今天自己写了一个繁简体转换的代码。主要是利用繁简体字对应字符串。这里可能有些不全,不过可以自己添加没有的进去。解释一下主要的代码:ord函数获得字符的Unicode编号。我们汉字范围[\u4e00-\u9fa5]大约接近2万个汉字的Unicode代码编号都在19667和40870之间(不包括两端),限定只去检查汉字,剩下的就去找汉字在转换列表中是否存在,存在就发生转换并存放到新字符串里...原创 2018-12-07 18:33:37 · 1430 阅读 · 0 评论 -
spyder整成vscode的颜色方案
今天用拾色器将spyder的主要颜色方案调成了vscode的颜色布局。各个颜色值的设定如下图:你可以创建一个新的scheme或者修改已有的scheme.主要就是调整color scheme editor里面各个颜色值。步骤3里面的#带6位字母数字混合的就是颜色值了。然后我又将代码字体调大了了点。size调为了11.代码间距感觉没那么拥挤了。代码文件布局效果: shell命令...原创 2018-12-02 12:23:16 · 4353 阅读 · 1 评论 -
python处理网页带#&加上5位数字的字符
数据源见网址:https://tbskip.taobao.com/json/item_sku.do?item_num_id=562037078185,来源于淘宝的数据抓取。网页数据结构如下:很明显的json格式。这里我就不说怎么处理json数据了。Python有json模块,转化为列表或者字典结构处理不难。这是网页上的数据,现在看我们获取的网页源代码:import requests...原创 2018-11-22 11:25:25 · 652 阅读 · 0 评论 -
python 转Excel二维表为一维表
今天研究一下使用python怎么把excel二维表转化为一维表。文件名为二维表.xlsx的Sheet1数据源:二维表.xlsx的Sheet2要实现的结果:import pandas as pddf=pd.read_excel('二维表.xlsx',sheet_name='Sheet1')得到数据源的数据帧:我们再将第一列设置为索引,去掉默认的数字索引:df1=...原创 2018-11-21 12:13:46 · 2027 阅读 · 0 评论 -
tkinter选择多文件对话框
本例展示tkinter实现选择多文件对话框,并可以选择文件类型。from tkinter import Tk ,filedialogroot=Tk()root.withdraw()cur=filedialog.askopenfilenames(filetypes=[('text files', '.txt'),('pythonfiles',('.py','.pyw'))])if cu...原创 2018-12-23 13:41:11 · 8444 阅读 · 0 评论 -
批量导入excel表格数据到数据库
excel名为"Table"的工作表表格数据如下,需要批量插入mysql/mariadb数据库里面。# -*- coding: utf-8 -*-"""Created on Mon Dec 24 10:05:37 2018@author: Fanxiaolei"""import pymysqlimport xlrdwb=xlrd.open_workbook('样例.xls...原创 2018-12-24 10:49:14 · 1728 阅读 · 0 评论 -
pandas dataframe添加表格框线输出
将dataframe添加到texttable里面,实现格式化输出。data=[{"name":"Amay","age":20,"result":80}, {"name":"Tom","age":32,"result":90}]df=pd.DataFrame(data,columns=['name','age','result'])原创 2019-01-09 23:57:05 · 12047 阅读 · 2 评论 -
python读取word文件里的表格。
因为power bi desktop支持了python.借用了python将word文件里的表格读取到power bi里面。python这部分的代码如下。说明一下:用了docx库,这个库不支持doc的格式。:from docx import Documentimport pandas as pdres=[]#docx库不支持doc格式def read_table(docpath:...原创 2019-01-15 11:50:33 · 11577 阅读 · 0 评论 -
解决matplotlib作图中文无法正常显示的问题
matplotlib在默认情况下无法正常显示图表中的中文:找到matplotlib的安装目录。如下面我使用的是anaconda。进入matplotlib下的mpl-data文件夹里。找到matplotlibrc配置文件:用记事本/notepad++打开。如下图红色框线标记的两行,font.serif和font.sans-serif这两行加入支持中文的字体,并取消掉前面的#注释符号,...原创 2019-01-07 08:27:58 · 3832 阅读 · 3 评论 -
python读取有密码的zip压缩文件
今天试了一下用zipfile模块读取有密码的zip压缩文件。今天用winrar 5.6将一个名字为1.xlsx的excel文件打包成1.zip压缩包。采用默认的压缩算法(没有勾选传统加密锁法):import zipfileimport pandas as pdzf=zipfile.ZipFile("F:/Desktop/1.zip")print(zf.namelist())f...原创 2019-01-17 11:10:56 · 4564 阅读 · 0 评论 -
python3.6正则表达式中的新特性
1.可以直接在正则表达式中使用修饰符。如下面的正则里面直接使用i修饰符使其忽略大小写的字母p,结果同时匹配大小写。 2.match对象支持通过分组名称以字典的形式直接取得匹配结果,和group是等同的。3.match 对象支持索引,可以通过索引匹配结果,和group切片一样。 ...原创 2018-12-29 22:40:29 · 653 阅读 · 0 评论 -
python 浅谈fstring以及简单的使用。
今天看了一下python 3.6中的fstring格式化,还是蛮方便的。字符串前面需要带上f标记,变量名直接用在字符串里面,需带上{}以与普通的字符串区分:要想使{}只作为单纯的{}而没有格式化的特殊意义,可以double一次就可以只代表本身了。 如下图,这样{}也出现在里面了,但是格式化也失败了。 要是想要将名字显示在{}里面。我们需要先把name放在{}里面,然后外面再套上一层...原创 2018-12-29 20:43:22 · 4668 阅读 · 0 评论 -
提取Access数据到excel
如下图将Access数据写入到excel里面:结果:win32com使用ado+sql查询方法获得数据并写入excel. # -*- coding: utf-8 -*-"""Created on Mon Dec 24 19:56:24 2018@author: Fanxiaolei"""from win32com.client import Dispatchfr...原创 2018-12-24 22:40:04 · 1538 阅读 · 0 评论 -
pandas拆分单行数据到多行。
df = pd.DataFrame({'型号':['212027'],'颜色':['蓝,粉,黄'], '尺码': ['12-18M,2-3Y,3-4Y']})要拆分数据到扩展到多行,如下图:实现代码:# -*- coding: utf-8 -*-"""Created on Mon Dec 24 19:27:35 2018@aut...原创 2018-12-24 20:22:18 · 4448 阅读 · 0 评论 -
python里面的带*和**的参数作用
今天我们来看一下在Python中的*和**的作用。下面我们先来看一下示例:# -*- coding: utf-8 -*-"""Created on Mon Nov 19 06:26:40 2018@author: FanXiaoLei"""def func(*args,**kwargs): print(args,'----',kwargs)print(func(1,3,...原创 2018-11-19 07:53:48 · 1154 阅读 · 0 评论 -
通过conda安装redis模块import出错
今天发现anaconda通过conda install redis可以成功安装redis模块,但是在import redis的时候会报错。如下图:后来我先将conda安装好的redis通过conda remove redis卸载了.然后用下pip方式安装好redis模块。再试了下import redis发现可以正常使用。发现代码可以正常运行了。o(∩_∩)o 哈哈,在这里记录一下...原创 2018-11-14 20:42:08 · 3704 阅读 · 4 评论 -
向excel里面插入网络图片
今天研究的是向excel里面插入网络图片。不是将网络图片保存到本地,再完成插入操作。这里直接是通过网络图片的数据流转化为可以操作的image对象,直接插入到Excel表的A1单元格里面,并且调整单元格A1的行高和列宽以适应图片。# -*- coding: utf-8 -*-"""Created on Thu Aug 2 20:50:49 2018@author: F...原创 2018-08-06 21:03:34 · 6541 阅读 · 7 评论 -
凑数求和
示例列举出列表L=[1,2,3,4,5,6,8,8,9,7,5]里所有组合的加和为30的非重复的组合。# -*- coding: utf-8 -*-"""Created on Thu Jul 19 22:19:37 2018@author: FanXiaoLei"""import itertoolsL=[1,2,3,4,5,6,8,8,9,7,5]res=[]for r i...原创 2018-08-01 04:54:08 · 4327 阅读 · 2 评论 -
pandas处理json数据
今天展示一个利用pandas将json数据导入excel例子,主要利用的是pandas里的read_json函数将json数据转化为dataframe。先拿出我要处理的json字符串:strtext='[{"ttery":"min","issue":"20130801-3391","code":"8,4,5,2,9","code1":"297734529原创 2018-08-05 12:14:04 · 55273 阅读 · 1 评论 -
selenium操作无界面chrome浏览器
今天展示一下python操作无界面的chrome浏览器。主要利用selenium 和对应自己电脑上Chrome浏览器版本的webdriver。chrome版本的webdriver下载地址:http://chromedriver.storage.googleapis.com/index.html。windows版本的只有32位的chromedriver.你无需担心你用的是64位的浏览器。...原创 2018-08-04 11:28:51 · 34571 阅读 · 4 评论 -
pandas使用sql获取数据
1.pandas读取sqlite;# -*- coding: utf-8 -*-"""Created on Thu Jul 19 14:38:22 2018@author: FanXiaoLei"""import sqlite3import pandas as pdcnn=sqlite3.connect('world.db3')df=pd.read_sql('select ...原创 2018-07-21 20:32:06 · 962 阅读 · 0 评论 -
求和值大于等于776且和值最小的两个数
本例是求两个数值的和大于等于776且和是最小的的两个数。# -*- coding: utf-8 -*-"""Created on Fri Jul 13 10:49:32 2018@author: FanXiaoLei"""import itertoolsimport sysdata=[161,184,265,462,475,476,532,550,651,973]res=...原创 2018-07-21 09:01:50 · 288 阅读 · 0 评论 -
pandas去重复行并分类汇总
今天主要记录一下pandas去重复行以及如何分类汇总。以下面的数据帧作为一个例子: import pandas as pddata=pd.DataFrame({'产品':['A','A','A','A'],'数量':[50,50,30,30]})pandas判断dataframe是否含有重复行数据用:df.duplicated() 第一次出现的数据为False.重复的数据行就被...原创 2018-07-20 09:52:09 · 18798 阅读 · 0 评论 -
网抓示例
今天展示一下抓取好买https://www.howbuy.com/fund/001605/左上角的重仓持股数据。要获取的数据如下图: 通过浏览器的开发工具我们可以找到除了日增幅以外的数据都放在下面的url里面,就在定义的变量gpzhListData这一部分。https://static.howbuy.com/??/upload/auto/script/fund/jzzs_001605....原创 2018-08-02 11:24:36 · 1179 阅读 · 0 评论 -
python 3中\w+匹配汉字的问题。
今天记录一下有关python 3中正则表达式的一个小问题。我们知道正常情况下,\w+匹配字母数字及下划线,相当于[A-Za-z0-9_]。在python 3中我们试下\w+的匹配字符串的时候,会发现匹配会匹配到中文汉字。如下图所示: 这是什么原因呢?在python 3里面,默认的是Unicode编码。正则也是默认的编码模式。 我们知道unicode编码由字母和数字构成。这...原创 2018-08-26 12:09:59 · 4689 阅读 · 0 评论 -
pandas筛选出表中满足另一个表所有条件的数据
今天记录一下pandas筛选出一个表中满足另一个表中所有条件的数据。例如:list1 结构: 名字,ID,颜色,数量,类型。list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']]list2结构:名字,类型,颜色。list2 = [['a','03',255],['a'...原创 2018-11-16 08:35:58 · 14091 阅读 · 0 评论 -
python 怎么import自己写的py模块
今天给大家说以下怎么import自己写的自定义py模块文件。我就以一个简单的例子讲一下。我的自定义模块为放在桌面上的名叫udf.py的文件。代码很简单,如下就是一个加和的自定义函数:那我要怎么样可以在Python的命令行或者代码里调用这个函数呢?首先将这个文件压缩成zip文件。我这里压缩后的文件名称为mymodule.zip文件,同样放在桌面上,当然你可以放在方便自己管理的其他地方。...原创 2018-11-18 23:09:01 · 48492 阅读 · 1 评论 -
利用python在excel里面直接使用sql函数
我们一般在Excel里面是使用数据连接属性里面写sql语句,或者vba里面利用ado组件执行sql语句。新版的Excel里面带上了Power query的功能也可以使用Odbc.DataSource()和Odbc.Query()函数写sql语句。今天讲一下利用Python直接在excel里面使用xlwings addin 里的一个名为sql的函数。 首先我们需要在python...原创 2018-11-14 15:35:29 · 3393 阅读 · 0 评论 -
python获得页面跳转的最终URL
本例采用selenium获得最终的网页链接。原来的网址是:http://www.baidu.com/link?url=ojjD2hHxviDl0j4T6MCQzRaQYUyYe0BX2aCXcNI5UliRtQum2Y7XH9_xZ08mzOJH,网页完全加载完成后的网址变为了https://weibo.com/niceinapp?is_hot=1。代码如下:# -*- coding...原创 2018-11-12 14:05:57 · 12242 阅读 · 2 评论 -
pyinstaller封装exe
我使用的是anaconda。我推荐大家使用anaconda,对环境依赖关系处理的比较好。不用浪费太多时间在安装模块上。首先安装pyinstaller.命令:pip install pyinstaller需要封装的代码为一个api消息框。代码如下,保存的是pyw文件,放在桌面上。# -*- coding: utf-8 -*-"""Created on Sun Jul 1 21:...原创 2018-09-27 14:17:15 · 1620 阅读 · 0 评论 -
python读取zip压缩文件里面的csv数据
利用zipfile模块和pandas获取数据,代码比较简单,做个记录吧:# -*- coding: utf-8 -*-"""Created on Tue Aug 21 22:35:59 2018@author: FanXiaoLei"""from zipfile import ZipFileimport pandas as pdmyzip=ZipFile('2.zip')...原创 2018-08-28 22:53:50 · 14355 阅读 · 0 评论 -
python判断是否为素数
下面的自定义函数是判断一个自然数是否为素数。利用的是6倍原理。一个自然数都能写成6的形式。如:6K+N(0=<N<=5的整数)。N为0,2,3,4的时候6K+N能被1和本身以外的数整除,也就是一个数只有在除以6的时候余数为1或者5的才有可能是素数。之所以说有可能是要排除掉25能被6X1-1整除,35=(6X1-1)*(6X1+1),排除掉这种情况就可以了。代码如下:# -*- ...原创 2018-08-27 16:35:45 · 3353 阅读 · 0 评论 -
python判断是否回文数
设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。上面的解释就是说回文数和逆序后的结果是相等的。这就是判断一个数值是否是回文数的标准。代码也是根据这个思路来实现的。# -*- coding: utf-8 -*-"""Created on Sun A...原创 2018-08-19 16:11:07 · 18399 阅读 · 0 评论 -
DataFrame分组排序
需要对df进行分组后排序。import pandas as pddf = pd.DataFrame([['a', 1, 'c'], ['a', 3, 'a'], ['a', 2, 'b'], ['c', 3, 'a'], ['c', 2, 'b'], ['c', 1, 'c'], ['b', 2, 'b'], ['...原创 2019-02-14 12:59:33 · 6299 阅读 · 0 评论