python
文章平均质量分 53
7*24 工作者
走自己的路,让别人说去吧
展开
-
Python3 使用 pymssql 连接 SQL Server 报错:DB-Lib error message 20002, severity 9
通过python自带的os模块,详细打印连接详细日志。重新连接,没有报错,执行SQL,有数据输出。从报错信息上可以发现,是找不到。原创 2024-05-27 11:05:59 · 1909 阅读 · 1 评论 -
用Python处理Excel的14个常用操作
python处理excel的常用操作转载 2022-09-13 13:23:44 · 705 阅读 · 0 评论 -
PyCharm 解除文本文件大小限制
用 PyCharm 打开较大文本的时候,出现提示File size exceeds configured limit (2560000), code insight features not available,是因为IDEA对能关联的文件大小做了限制,主要是为了保护内存,默认值为2500kb。解决方法如下:方法一:在 PyCharm 安装目录的 bin 目录下,新建 idea.properties 文件,并在文件中添加一行# custom PyCharm propertiesidea.max.i原创 2021-07-27 10:00:47 · 6948 阅读 · 1 评论 -
比 open 更适合读取文件的内置模块 fileinput
一、从标准输入中读取当你的 Python 脚本没有传入任何参数时,fileinput 默认会以 stdin 作为输入源#!/usr/bin/env python#-*- coding:utf-8 -*-#name: demo.pyimport fileinputfor line in fileinput.input(): print(line) 效果如下,不管你输入什么,程序会自动读取并再打印一次,像个复读机似的。$ python demo.py hellohellop翻译 2021-03-05 09:07:57 · 403 阅读 · 1 评论 -
Pandas的5个高效函数
一、explodeexplode用于将一行数据展开成多行。比如说dataframe中某一行其中一个元素包含多个同类型的数据,若想要展开成多行进行分析,这时候explode就派上用场,而且只需一行代码,非常节省时间。用法:DataFrame.explode(self, column: Union[str, Tuple])参数作用:column :str 或 tuple示例: 以下表中第三行、第二列为例,展开[2,3,8]# 先创建表#!/usr/bin/env python#-*- c翻译 2020-12-23 09:27:50 · 445 阅读 · 0 评论 -
selenium 无头模式
Firefox驱动下载地址:https://github.com/mozilla/geckodriver/releases 或者 http://npm.taobao.org/mirrors/geckodriver/Chromedriver驱动下载地址:http://npm.taobao.org/mirrors/chromedriver/一、无头模式from selenium import webdriverfrom selenium.webdriver.chrome.options import O翻译 2020-11-03 16:17:15 · 1975 阅读 · 2 评论 -
python进度条使用和生成二维码
一、进度条1、利用time模块实现import timefor i in range(0, 101, 2): time.sleep(0.3) num = i // 2 if i == 100: process = "\r[%3s%% ]: |%-50s|\n" % (i, '#' * num) else: process = "\r[%3s%% ]: |%-50s|" % (i, '#' * num) print(process, end='', flush=True)2、使用原创 2020-10-26 10:44:54 · 544 阅读 · 0 评论 -
Python 日志记录库 loguru
一、说明和安装1、说明在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息。在 Python 中用到日志记录,那就不可避免地会用到内置的 logging 标准库 。虽然 logging 库采用的是模块化设计,你可以设置不同的 handler 来进行组合,但是在配置上通常较为繁琐;而且如果不是特别处理,在一些多线程或多进程的场景下使用 logging 还会导致日志记录会出现错乱或是丢失的情况。但有这么一个库,它不仅能够减少繁琐的配置过翻译 2020-10-20 11:45:49 · 1016 阅读 · 1 评论 -
Python展示Excel中常用的20个操作
Excel与Python都是数据分析中常用的工具,本文将使用动态图(Excel)+代码(Python)的方式来演示这两种工具是如何实现数据的读取、生成、计算、修改、统计、抽样、查找、可视化、存储等数据处理中的常用操作!数据读取说明: 读取本地Excel数据ExcelExcel读取本地数据需要打开目标文件夹选中该文件并打开PandasPandas支持读取本地Excel、txt文件,也支持从网页直接读取表格数据,只用一行代码即可,例如读取上述本地Excel数据可以使用 pd.read_excel翻译 2020-07-16 11:03:55 · 914 阅读 · 0 评论 -
aiomysql异步操作mysql
一、概述aiomysql是一个从asyncio(PEP-3156/tulip)框架访问MySQL数据库的库。它依赖并重用PyMySQL的大部分部分。aiomysql试图成为一个很棒的aiopg库,并保留相同的api、外观和感觉。在内部aimysql是PyMySQL的副本,底层io调用切换到async,基本上是等待并在适当的位置添加async def coroutine。从aiopg移植的sqlalchemy支持。二、安装模块pip3 install aiomysql三、简单示例#!/usr翻译 2020-05-27 13:43:34 · 4453 阅读 · 0 评论 -
内存映射文件mmap
一、简介内存映射文件,是由一个文件到一块内存的映射。内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,内存文件映射的物理存储器来自一个已经存在于磁盘上的文件,而且在对该文件进行操作之前必须首先对文件进行映射。使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行I/O操作,使得内存映射文件在处理大数据量的文件时能起到相当重要的作用。...原创 2020-03-27 11:25:14 · 3502 阅读 · 0 评论 -
Pyppeteer
一、简介Puppeteer 是 Google 基于 Node.js 开发的一个工具,有了它我们可以通过 JavaScript 来控制 Chrome 浏览器的一些操作,当然也可以用作网络爬虫上,其 API 极其完善,功能非常强大。 而 Pyppeteer 又是什么呢?它实际上是 Puppeteer 的 Python 版本的实现,但他不是 Google 开发的,是一位来自于日本的工程师依据 Pupp...翻译 2020-03-24 10:16:00 · 1955 阅读 · 0 评论 -
Python实现加密方法集合
一、常用的js加密算法1、js加密解密算法对称加密(加密解密密钥相同):DES、DES3、AES非对称加密(分公钥私钥):RSA信息摘要算法/签名算法:MD5、HMAC、SHA2、算法说明①新浪微博登陆: RSA(非对称加密方式)登录前先get请求返回携带有token、pubkey、raskv、servertime等信息的dict字符串,包含在js中需要提取转换需要破解的参数是s...原创 2020-02-17 11:46:41 · 1624 阅读 · 0 评论 -
Python日期的加减
一、timedelta#Python的timedelta可以处理时间的加减import datetimesdate = datetime.datetime.strptime('2019.01.05','%Y.%m.%d')delta7 = datetime.timedelta(days=7)edate = sdate + delta7print(edate) #2019-0...翻译 2020-01-18 09:11:11 · 5775 阅读 · 0 评论 -
flask通过Flask-PyMongo操作mongo数据库
MongoDB 是一个开源的数据库,它存储着灵活的类-JSON 的“文档”。与关系数据库中的数据行相反,它能够存储任何的数字,名称,或者复杂的层级结构。Python 开发者可以考虑把 MongoDB 作为一个持久化,可搜索的 Python 字典的“仓库”(实际上,这是如何用 PyMongo 来表示 MongoDB 中的“文档”)。Flask-PyMongo 架起来 Flask 和 PyMongo...原创 2020-01-07 09:34:30 · 6774 阅读 · 0 评论 -
scrapy设置随机请求头和代理
一、设置随机请求头浏览器请求头网站地址:http://www.useragentstring.com/pages/useragentstring.php?typ=Browser1、添加中间件class UserAgentDownloaderMiddleware(object): USER_AGENT = [ "Mozilla/5.0 (compatible; MSIE...原创 2020-01-02 14:11:58 · 1450 阅读 · 0 评论 -
django + xadmin 配置后台
一、配置主题功能在任意一个应用下的新建 adminx.py 文件, 添加如下配置#-*- coding:utf-8 -*-import xadminfrom xadmin import viewsclass BaseSetting(object): enable_themes = True use_bootswatch = Truexadmin.site.regis...原创 2019-12-03 14:31:25 · 614 阅读 · 0 评论 -
django集成 xadmin 踩的坑
一、下载源代码,并安装源码到django项目源代码官网:https://github.com/sshwsfc/xadmin1、安装依赖将源代码下载到本地,并进入到源代码目录,执行 pip install -r requirements.txt2、在django的根项目路径下,创建 extra_app 包,并把源码包里面的 xadmin 目录放进去## ① settings.py 配置如...原创 2019-11-28 12:54:51 · 808 阅读 · 1 评论 -
pip 安装软件报 Requirement already satisfied
在高版本的 python 中安装软件 django-import-export 报错如下:E:\python\Demo>pip install django-import-exportLooking in indexes: https://pypi.tuna.tsinghua.edu.cn/simpleRequirement already satisfied: django-impo...原创 2019-11-28 10:48:15 · 5887 阅读 · 0 评论 -
python多线程中的共享全局变量的锁机制
一、Lock版锁机制多线程都是在同一个进程中运行的。因此在进程中的全局变量所有线程都是可共享的。这就造成了一个问题,因为线程执行的顺序都是无序的,有可能会造成数据错误,代码如下:#!/usr/bin/env python#-*- coding:utf-8 -*-import threadingVALUE = 0def add_value(): global VALUE ...原创 2019-11-04 14:25:28 · 4165 阅读 · 0 评论 -
python操作elasticsearch从创建索引到写入数据
一、创建索引##安装elasticsearch : pip install elasticsearch ##创建索引from elasticsearch import Elasticsearches = Elasticsearch('192.168.0.144:9200')mappings = { "mappings": { "type_doc_test": { #type...翻译 2019-10-25 13:50:50 · 1676 阅读 · 0 评论 -
python调用阿里api定时备份阿里云RDS数据库
需求: 全量备份数据库,但是数据库比较大,如果采用mysqldump在其他机器备份会大量占用mysql,所以研究了阿里api文档写了python脚本放在linux下用定时任务自动备份。一、安装阿里云rds的SDK模块pip install aliyun-python-sdk-rds参考地址:https://help.aliyun.com/document_detail/100865.ht...原创 2019-10-20 10:42:00 · 1251 阅读 · 0 评论 -
Python3 操作 elasticsearch
一、安装pip install elasticsearch二、连接集群节点1、指定连接es = Elasticsearch( ['172.16.153.129:9200'], # 认证信息 # http_auth=('elastic', 'changeme'))2、动态连接es = Elasticsearch( ['esnode1:port', '...翻译 2019-10-16 15:42:16 · 1389 阅读 · 0 评论 -
python3.5 模拟三级菜单
#!/usr/bin/env python#-*- encoding:utf-8 -*-# 一级菜单def menu1(): print('一级菜单'.center(40,'-')) for index1,key1 in enumerate(dic.keys(),1): # 遍历一级菜单 print(index1,key1)原创 2017-04-11 15:02:18 · 607 阅读 · 0 评论 -
linux中python 升级问题处理
zipimport.ZipImportError: can’t decompress data; zlib not available在linux上升级python2.7的时候,在make install没想到出现以下错误:zipimport.ZipImportError: can’t decompress data; zlib not available解决办原创 2017-04-11 17:22:44 · 506 阅读 · 0 评论 -
Python随笔1-练习题
Python随笔1-练习题1、求1-100的所有数的和sum =0for i inrange(101): sum = sum + iprint(sum) 2、输出 1-100 内的所有奇数方法一:fori inrange(100): ifi%2!= 0: print(i)方法二:fori原创 2017-04-12 11:03:18 · 669 阅读 · 0 评论 -
python学习随笔—— Python简介
一、Python环境安装PythonWindows:1、下载安装包https://www.python.org/downloads/2、安装默认安装路径:C:\python273、配置环境变量【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到变量名为Path 的一行,双击】...原创 2017-04-12 10:34:14 · 843 阅读 · 0 评论 -
PyCharm的快捷方式
在PyCharm help目录下可以找到ReferenceCard.pdf快捷键英文版说明1、编辑(Editing)Ctrl + Space 基本的代码完成(类、方法、属性)Ctrl + Alt + Space 快速导入任意类Ctrl + Shift + Enter 语句完成Ctrl + P 参数信息(在方法中调用参数)Ctrl + Q 快速查看文档Sh原创 2017-04-17 17:02:12 · 790 阅读 · 0 评论 -
利用python实现简单的爬虫
此方法是采用python的协程方式对网站进行数据的抓取协程也称作微线程,是比线程还小的一种执行体。 协程不同于线程的是,线程是抢占式的调度,而协程是协同式的调度,也就是说,协程需要自己做调度。协程工作的两种模式:手动执行和自动执行 手动执行主要是采用greenlet模块,自动执行的模块是gevent,我们在安装的时候只需要安装gevent模块即可,因为在自动执行的模块中封装了手动执行的模块gre原创 2017-08-02 09:13:15 · 496 阅读 · 0 评论 -
Pycharm新建模板默认添加个人信息
在pycharm使用过程中,对于每次新建的python文件的时候,关于代码编写者的一些个人信息快捷填写,使用模板的方式比较方便。方法如下:1.打开pycharm,选择File-Settings2.Editor –> File and Code Templates –> Python Script3.填写个人信息备注:可用的预定义文件模板变量为${PROJECT_NAME} - 当前项目的名称。${原创 2017-08-09 11:54:39 · 9070 阅读 · 3 评论 -
python基础之集合
集合是一个无序的,不重复的数据组合,它的主要作用如下:去重,把一个列表变成集合,就自动去重了关系测试,测试两组数据之前的交集、差集、并集等关系常用操作#!/usr/bin/env python#-*- coding:utf-8 -*-a = set([1,2,3,4,5])b = set([4,5,6,7,8])e = a | b # a 和 b的并集f = a & b原创 2017-08-17 16:03:19 · 433 阅读 · 0 评论 -
python三级菜单(优化版)
python三级菜单(优化版)#!/usr/bin/env python#-*- coding:utf-8 -*-dic = { '北京': { '东城': { '沙河': ['沙河机场', '链家'], '天通苑': ['北方明珠', '天通尾货'] },原创 2017-08-11 09:23:32 · 3121 阅读 · 0 评论 -
生成器、迭代器
补充内容: 1、匿名函数 匿名函数命名规格,用lambda关键字标识,冒号(:)左侧表示函数接收的参数(a,b),冒号(:)右侧表示函数的返回值res = lambda a,b:a+bprint(res(2,3)) #52、列表生成式a = [x**2 for x in range(10)]print(a) #[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]一原创 2017-08-22 11:29:38 · 487 阅读 · 0 评论 -
Python中字符串常用的方法
python中字符串常用的方法:information = "this is shanghai city,"information1 = "It's very bustling"aaa = "I come from {city},and myhometown is {name}"print(information.center(50,'*')) #长度为50,并且居中print(infor原创 2017-08-15 15:49:17 · 476 阅读 · 0 评论 -
Python中字符编码与转码
一 、什么是编码 ①ASCII 在计算机中的所有数据,不论是文字、图片、视频、还是音频文件,本质上最终都是按照类似 01010101 的二进制存储的。 所以,目的明确了:如何将我们能识别的符号唯一的与一组二进制数字对应上?于是美利坚的同志想到通过一个电平的高低状态来代指0或1,八个电平做为一组就可以表示出256种不同状态,每种状态就唯一对应一个字符,比如A—>00010001,而英文只有26个原创 2017-08-23 14:16:48 · 1979 阅读 · 0 评论 -
Python计算器
#!/usr/bin/env python#-*- coding:utf-8 -*-import re,functoolsdef minus_operator_handler(formula): '''处理一些特殊的减号运算''' minus_operators = re.split("-",formula) calc_list= re.findall("[0-9]",f转载 2017-08-28 16:41:42 · 513 阅读 · 0 评论 -
Ajax
Ajax主要作用: 把数据发到后台,但是不刷新页面,然后后台再给前端一个提示一、发送的格式 给对应标签(submit)绑定事件,利用jQery发请求,下面是一个固定格式$.ajax({ url:'', type:'POST/GET', #GET或者POST data:{'k1':123,'k2':'root'} traditional:true, #加入原创 2017-09-18 12:38:09 · 814 阅读 · 0 评论 -
Django分页
视图函数view.pyfrom django.shortcuts import render,HttpResponse,redirectfrom django.utils.safestring import mark_safeL = []for i in range(500): L.append(i)def index(request): current_page = reque原创 2017-09-18 15:00:34 · 696 阅读 · 0 评论 -
Pycharm激活
使用方法: 一、打开最新版本的pycharm 二、激活时选择License server 填入http://idea.imsxm.com 点击Active即可。原创 2017-09-11 15:44:37 · 3118 阅读 · 2 评论 -
Cookie、Session和缓存
Cookie1、获取Cookierequest.COOKIES['key']request.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age=None) 参数: default: 默认值 salt: 加密盐 max_age: 后台控制过期时间2、设置Cookiere翻译 2017-09-19 10:30:56 · 2268 阅读 · 1 评论