
Python场景积累
小步积
这个作者很懒,什么都没留下…
展开
-
python crosstab和excel透视表对照关系
crosstab是透视表的一个特殊情况,计算的是分组中的频率,和pivot_table相比,它不需要加上aggfunc='mean'这个参数。原创 2020-07-24 11:39:44 · 354 阅读 · 0 评论 -
python pivot_table和excel透视表对照关系
原创 2020-07-24 11:23:32 · 314 阅读 · 0 评论 -
python数据结构 元组、列表、字典、集合的比较
元组 列表 字典(哈希表,关联数组) 集合 符号 () [] {} {} 是否有序 有序 有序 无序 无序 是否可索引切片 可索引,可切片 可索引,可切片 不可索引,不可切片 不可索引,不可切片 是否可变 不可变 可变,可以增删 可变,可以增删 可变,可以增删 是否可hash化 可hash 不可hash 不可hash 不可hash 是否可原创 2020-07-23 16:53:11 · 179 阅读 · 0 评论 -
解决 lifelines anaconda安装失败
先说明一下:我的anaconda安装路径设置的是国内镜像,不是官方默认的路径在anaconda安装lifelines,1、首先用的命令是:conda install lifelines,结果:不成功。2、接着用从lifelines说明书上写的命令:conda install -c conda-forge lifelines结果:还是不成功。3、最后使用anaconda默认的路径,命令是:conda install -c https://conda.anaconda.org/cond原创 2020-05-26 14:03:04 · 2637 阅读 · 1 评论 -
解决:UnicodeDecodeError: utf-8 codec can t decode byte 0xb3 in position 732: invalid start byte
read_csv报错,报错信息如题,解决:df = pd.read_csv(filename, encoding='gb18030')原创 2020-05-25 13:58:26 · 1470 阅读 · 0 评论 -
解决:Data too long for column Key_Name 和 data truncated for column Key_Name
使用python往mysql导入数据时接连报错,Data too long for column 'Key_Name' 和data truncated for column 'Key_Name'。一、分析Bug初步判断是数据中Key_Name字段长度超过数据库表格设置的字段长度。二、解决办法调整字段长度:去数据库查看字段长度,发现是45,修改成100。再执行不再报错。...原创 2020-05-19 14:49:16 · 354 阅读 · 0 评论 -
换种思路解决:sqlalchemy.exc.StatementError : exception str() failed
首先介绍下这个bug的背景:使用pandas.to_sql()函数往Mysql里导入123万行数据的时候出的bug。在网上找了找,没找到怎么解决的,于是自己尝试。我的解决历程:【1】首先我觉得出现这个bug是某个字段有问题,可能字段的数据类型和数据库表中的字段的数据类型不一致,于是尝试先使用10条数据,可以顺利执行,那说明字段数据类型和数据库表设置的字段数据类型应该是没问题的。【2】接着跑全量数据还是同样的bug。【3】我考虑会不会是后面有某几条数据的某几个字段的值太异常了,为此我还原创 2020-05-15 10:45:18 · 3147 阅读 · 0 评论 -
解决端口占用问题:the service exists: false
遇到的问题:chrome服务不能连接,用到chrome服务的脚本都跑不了。通常重启chrome服务的流程是:1. powershell cd到服务路径2. node chrome_service.js uninstall, 使用这句命令先卸载或者叫停止服务3. nodechrome_service.js install,使用这句命令重启服务我遇到的这个问题是重启服务后,执行使用chrome服务的脚本还是会报错。我是这样解决的:【1】确定问题出现的原因是什么。去文件路径下找到服务.原创 2020-05-15 10:23:42 · 357 阅读 · 0 评论 -
anconda 安装 tushare
pip install tushare -i https://pypi.tuna.tsinghua.edu.cn/simple原创 2020-05-10 14:45:45 · 429 阅读 · 0 评论 -
conda升级pip
conda upgrade pip原创 2020-05-10 14:29:33 · 1393 阅读 · 0 评论 -
ModuleNotFoundError: No module named 'snowflake.connector', python 安装snowflake报错,已解决
今天用到snowflake了,语句是import snowflake.connector报错:ModuleNotFoundError: No module named 'snowflake.connector'。首先想到是安装snowflake,于是在命令窗口输入:python -m pip install snowflake -i http://pypi.douban.com/si...原创 2020-05-06 11:16:27 · 2183 阅读 · 3 评论 -
python pip 升级报错,已解决
python -m pip install --user --upgrade pip -ihttp://pypi.douban.com/simple --trusted-host pypi.douban.com尝试多种方法都失败了,上面这个升级成功。在此记录一下 。原创 2020-05-04 14:12:18 · 973 阅读 · 0 评论 -
taskkill命令窗口结束制定进程
# 结束excel.exe进程taskkill /f /fi "imagename eq excel.exe"原创 2020-04-09 15:14:03 · 469 阅读 · 0 评论 -
python SAP 点击滚动条实现逐条查询记录
又是SAP,自动化开发的时候测试数据只有1、2条没发现还有这个问题:查询出来的结果很多,需要滚动鼠标或者滚动条才能看下面的记录。本来写了个循环,会按句柄循环查看记录,句柄按记录序号自增,但是SAP那些记录的句柄不是按这条记录的序号来的,它跟这条记录在这一屏的位置有关。如果一屏能显示10条,我们一共查询了15条,那么有5条就不在这一屏,需要滚动下鼠标或者滚动条才能看到,假如第一屏显示的10条记录...原创 2020-03-20 23:40:59 · 619 阅读 · 0 评论 -
python pyautogui 模拟键盘鼠标实现excel自动化
最近有一个自动化需求,实现的是:从SAP某些模块导出电子表格到本地,难点是实现excel临时文件的另存为,SAP导出的方式打开一个excel临时文件,然后往里写入数据,写好后需要另存excel临时文件,如果不另存为,SAP就直接关闭了临时文件,导出的数据也就消失了。吐槽:SAP太不智能了,导出文件功能就直接导出一个文件,让我们另存为最好了,这个模块就非得打开excel然后往里写数据,关键是它不...原创 2020-03-20 15:03:14 · 2213 阅读 · 0 评论 -
python借助Scripting Tracker工具完成SAP自动化
最近有个项目做SAP自动化,脚本代替人工完成重复次数高的动作。在这个项目中借助了Scripting Tracker工具,网络上关于Scripting Tracker工具的介绍不是很多,因此写个文记录下我的使用心得,希望能帮助到你。一、先介绍下Scripting Tracker工具给我的帮助:1、找到操作对象句柄即ID。 2、录制动作转成python脚本。链接: ...原创 2020-03-13 17:14:42 · 6578 阅读 · 5 评论 -
python timedate 相关 bug
今天遇到好多个关于datetime的报错,于是有了一个想法,把datetime相关的bug都记录下来。1、method_descriptor object has no attribute today解决:导入模块写的是from datetime import datetime,改成import datetime2、descriptor strftime requires a date...原创 2020-03-13 14:39:34 · 1909 阅读 · 0 评论 -
python 报错 This COM object can not automate the makepy process - please run makepy manually for this
执行一个脚本报错This COM object can not automate the makepy process - please run makepy manually for this object,在网上查了一些资料,是pywin32com造成的,报错语句:excel = win32com.client.gencache.EnsureDispatch('Excel.Appli...原创 2020-03-11 21:21:28 · 7944 阅读 · 1 评论 -
window定时任务,bat脚本
今天遇到一个需求,把一个脚本设置成定时任务。解决:1、写bat脚本1.1 先创建一个text文本,在里面写上如下语句:@cho offchcp 936cd C:\###python ****.pypause1.2 修改文本后缀,从.text到.bat2、window设置定时任务2.1 找到创建定时任务的地方:我的电脑——右键——管理——系统工具——任务计划程序——创建基...原创 2020-03-07 00:01:23 · 3517 阅读 · 0 评论 -
python 总结常用语句
做ETL半年了,把常用的代码总结以下。# -*- coding: utf-8 -*-import pandas as pdimport requestsfrom pymongo import MongoClientimport numpy as npfrom timeit import default_timer as timerimport refrom sqlalchemy...原创 2020-01-10 17:20:14 · 263 阅读 · 0 评论 -
python TypeError: unhashable type: 'set'
写代码时遇到这个问题,代码大概如下: for i in dataSet: for j in canSet: if j.issubset(i): can_num_dic[j] = can_num_dic.get(j, 0) + 1TypeError: unhashable type: 'set'查了一些资料,...原创 2019-12-17 17:14:51 · 8604 阅读 · 0 评论 -
python 列表/元组/字典/集合
列表 list :,有序(可以位置索引),可以重复,可变,类型可以不同元组 tuple:有序(可以位置索引),可以重复,不可变字典 dic :键值对,无序(不可以位置索引,只能用键),key不可以重复集合 set:跟字典类似,可以看成是字典的key组成的,所以有无序和不重复的性质。frozenset:不可变集合,不能向集合中添加或删除元素...原创 2019-12-16 13:18:24 · 163 阅读 · 0 评论 -
python os.walk读取路径下文件名
import osdir_path = "C:/***/***"for root,dirs,files in os.walk(dir_path): for file in files: # print(os.path.join(root,file)) if file[:len('***')] == '***': data_1...原创 2019-11-19 15:29:21 · 721 阅读 · 0 评论 -
解决 python UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: invalid charact
python read_csv时,遇到报错:UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: invalid character,暴力解决方法是直接修改csv文件名,把文件名里面的中文改成英文。出错的代码如下:import pandas as pddf = pd.read_csv('s...原创 2019-11-08 16:19:10 · 20185 阅读 · 3 评论 -
Python APScheduler定时执行任务:调度(schedule)一个能退出有出口的循环类型
场景:即日起截止到2019年国庆节前,每周工作日的8点-20点,去指定目录查看一个文件当日是否存在,如果存在就拿来使用然后删除文件,如果不存在则每隔15分钟循环执行这个判断,直到文件出现在目录下,如果超过20点文件依然没有出现则不再执行循环。简易流程图如下所示。这里就模拟去桌面查找test.xlsx是否存在。处理过程:代码如下所示,因为是个定时任务,这里就不展示结果了。不知道怎么在...原创 2019-08-18 06:00:28 · 3345 阅读 · 0 评论 -
Python DataFrame数据重排(重塑),将数据的列旋转为行
场景和模拟数据:excel里有一份产品详情表,包含SKU编码、SKU名称、颜色和尺码,属性是按列排放的,但是部分SKU的属性是空的。这次的任务是把这份excel数据读到Python里面,并且要把属性转成按行排列,excel里面的原始数据形式和最终要转化成的dataframe形式如图所示。处理过程:每一步的处理可以参考注释理解。import pandas as pd# 读取e...原创 2019-08-17 17:25:27 · 6792 阅读 · 2 评论 -
Python 从包含时间序列的数组里,取不完整月份的最后一天的日期
场景:Python中,DataFrame包含时间序列,需要从时间序列中取出每个月最后一天的日期。模拟数据介绍:DataFrame大小是(600,2),2列数据date和value,date是连续的从2018-01-01到2019-08-23,value连续的从0到599,想要的结果是每个月最后一天的日期,比如:2018-01-31、2018-02-28...2019-08-23,并把结...原创 2019-08-15 22:55:05 · 4491 阅读 · 4 评论