python
xiaoming0018
这个作者很懒,什么都没留下…
展开
-
Python csv库
Python模块的读写使用原创 2023-05-16 10:43:46 · 1959 阅读 · 0 评论 -
Linux系统(Centos 8)环境安装
【代码】Linux系统(Centos 8)环境安装。原创 2022-09-08 16:24:45 · 1344 阅读 · 0 评论 -
python时间格式相互转化
一、时间戳转化时间1、datetime2、time二、将其他字符串格式时间转化为自己需要的格式1、datetime2、time3、获取月份的第一天和最后一天原创 2022-06-17 17:33:15 · 12076 阅读 · 0 评论 -
Python使用Oracle数据库详解与flask_sqlalchemy连接多个数据库
一、安装cx_Oraclepip3 install cx_Oracle二、连接数据库1、cx_Oracle连接方法dsnStr = cx_Oracle.makedsn('ip', port, service_name='orcl')conn = cx_Oracle.connect('username', 'password', dsn = dsnStr)cur = conn.cursor()datas =cur.execute("select * from person where原创 2022-01-05 16:54:25 · 2289 阅读 · 0 评论 -
python工具——pypinyin 汉字转换拼音
把汉字转成拼音后可以进行深度学习分类,做内容识别1.安装pip install pypinyin将汉字转换为拼音并生成 slug 字符串import pypinyinfrom pypinyin import Stylecontent = pypinyin.slug('汉语拼音')print(content)# E:\python\>python pinyin.py# han-yu-pin-yin修改分隔字符串import pypinyinfrom pypiny原创 2021-11-17 10:57:24 · 1769 阅读 · 0 评论 -
Python将已有数据库转为ORM中的Model
peewee可以用Model直接在数据库中创建表反过来也可以,用数据库中已经存在的表创建Model前提:已经安装peewee模块pip install peewee用数据库中已经存在的表创建Model$ python -m pwiz -e mysql -H localhost -p 3306 -u root -P -t table_names database_name > model.py参数解释:选项 解释 举例 -h help 显示帮助.转载 2021-11-09 09:59:37 · 675 阅读 · 0 评论 -
Python爬取网页Utf-8解码错误及gzip压缩问题的解决办法
header是否存在 'Accept-Encoding':' gzip, deflate',2)的解决办法为:import requestsimport gzipurl="http://news.sina.com.cn/c/nd/2017-02-05/doc-ifyafcyw0237672.shtml"req = requests.get(url)req.encoding= 'utf-8'原创 2021-05-31 15:30:23 · 943 阅读 · 1 评论 -
报错:ModuleNotFoundError: No module named ‘_sqlite3‘
报错:ModuleNotFoundError: No module named '_sqlite3’1.首先安装缺失的sqlite3库:sudo apt-get install sqlite-devel 或sudo apt-get install libsqlite3-dev2.如果上面的方法不行,重新下载编译安装sqlite3sudo wget https://www.sqlite.org/2020/sqlite-autoconf-3330000.tar.gzsudo tar原创 2020-11-26 14:53:34 · 1762 阅读 · 2 评论 -
Python处理Excel表格
官方实例:import openpyxlwb = openpyxl.Workbook()ws = wb.active #调用得到正在运行的工作表,该函数调用工作表的索引(_active_sheet_index),默认是0。# ws = wb.create_sheet() #新建一张表ws.title = '一个新的表格' ws['A1'] = 'Test'ws.append(['1','2','3','4','5'])wb.save('test.xlsx')一.创建一个工作簿1原创 2020-11-17 11:05:34 · 689 阅读 · 0 评论 -
Dockerfile修改时区
Dockerfile 时区设置RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shanghai' >/etc/timezoneDockerfileFROM centos:7VOLUME /tmpADD . .RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shanghai' &g原创 2020-11-16 16:26:41 · 2909 阅读 · 0 评论 -
python多任务—协程(asyncio详解) 二
在协程中调用普通函数,可以使用关键字:call_soon, call_later, call_at1、loop.call_soon(callback, *args, context=None) 从字面上看是调用立即返回。在下一个迭代的事件循环中立即调用回调函数,大部分的回调函数支持位置参数,而不支持关键字参数,如果想用关键字参数,可以使用functools.partial()方法对回调函数进一步封装。可选关键字context允许指定要运行的回调的自定义contextvars.Context,当没有提供上转载 2020-08-05 15:40:29 · 1363 阅读 · 0 评论 -
Python多任务—协程(asyncio详解) 一
协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程。协程的标准定义: 必须在只有一个单线程里实现并发 修改共享数据不需加锁 用户程序里自己保存多个控制流的上下文栈 一个协程遇到IO操作自动切换到其它协程特点:协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。因此,协程能保留上一次调用时的状态(即所有局部状态的一个特定组合),每次过程重...转载 2020-08-05 15:35:02 · 5099 阅读 · 3 评论 -
Python的小技巧和骚操作
6、Python 修改程序的默认时区和工作域的时区。2、检查两个字符串是不是由相同字母不同顺序组成。7、Python 判端字符串是否为ip。原创 2020-06-17 18:23:35 · 182 阅读 · 0 评论 -
Python 修改程序的默认时区和工作域的时区
我们在使用Docker和在生产机器上由于系统安装时时区可能选择不对,并不是中国的东八区,导致使用日期时间函数与当地时间相差8个小时。尤其是使用tornado和flask时项目时使用时间日期的文件比较多时,每个文件去更改比较麻烦。找到一个比较简单的方法,程序启动时加两行代码即可:import os,timeos.environ['TZ'] = 'Asia/Shanghai'time.tzset() #Python time tzset() 根据环境变量TZ重新初始化时间相关设置。...原创 2020-05-28 14:09:59 · 2886 阅读 · 1 评论 -
Python-web框架程序启动详解manage.py
#!/usr/bin/env python#-*- coding:utf-8 -*-import osfrom app import create_app, dbfrom app.admin.models import Assetfrom app.auth.models import LoginUserfrom flask_script import Manager, Shellfrom flask_migrate import Migrate, MigrateCommand# 使用指.原创 2020-05-12 18:17:06 · 1167 阅读 · 1 评论 -
Python-web框架 Config 通用配置和init_app 静态方法的作用
《flask Web开发》第七章中,有config的代码创建一个文件Config.py保存配置:#coding:utf-8import osbasedir = os.path.abspath(os.path.dirname(__file__))class Config: SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard to guess string' SQLALCHEMY_COMMIT_ON_TEARDOWN = Tru原创 2020-05-12 18:05:54 · 1051 阅读 · 0 评论 -
TypeError: not enough arguments for format string
python学习过程中,报错:TypeError: not enough arguments for format string将字符串中的%替换为%%,达到转义的效果(python 执行原生sql时也可以用%%达到转义解决报错)...转载 2020-01-15 15:07:42 · 717 阅读 · 0 评论 -
Python深浅拷贝与私有化
Python中的对象包含三要素:id、type、value。id用来唯一标识一个对象,type标识对象的类型,value是对象的值。is判断的是a对象是否就是b对象,是通过id来判断的。是比较两个引用是否指向了同一个对象(引用比较)。==判断的是a对象的值是否和b对象的值相等,是通过value来判断。是比较两个对象的值是否相等(值的比较)。Python为了优化速度,使用了小整数对象池, 避免为整数...原创 2018-05-18 20:54:20 · 182 阅读 · 0 评论 -
Peewee 使用
Peewee是一个简单小巧的Python ORM,它非常容易学习,并且使用起来很直观。如果想快速入门,请参考官方的Quckstart。基本知识在官方的Quckstart中,Peewee中Model类、fields和model 实例与数据库的映射关系如下:也就是说,一个Model类代表一个数据库的表,一个Field字段代表数据库中的一个字段,而一个model类实例化对象则代...原创 2018-10-24 17:13:40 · 1819 阅读 · 1 评论 -
Python爬虫之PyQuery的用法
python教程全解1、安装 pip install pyquery2、官方文档: https://pythonhosted.org/pyquery/3、初始化(1)直接字符串 (pq 参数可以直接传入 HTML 代码,doc 现在就相当于 jQuery 里面的 $ 符号了)from pyquery import PyQuery as pqdoc = pq("<htm...转载 2019-01-17 16:35:18 · 463 阅读 · 0 评论 -
Python3 配置文件(configparser)
#!/usr/bin/env python# coding=utf-8# config_configparser.py 配置文件# configparser 可以读写和解析注释文件, 但是没有写入注释的功能import configparserimport reconfig_str = '''# 配置文件信息案例[DEFAULT]minSdkVersion = 15ta...转载 2019-01-29 18:17:26 · 323 阅读 · 0 评论 -
非常实用二十个正则表达式
正则表达式,是一个强大且高效的文本处理工具。通常情况下,通过一段表达准确的表达式,能够非常简短、快速的实现复杂业务逻辑。因此,正则表达式通常是一个成熟开发人员的标配,可以辅助实现开发效率的极强提升。在需要实现校验字段、字符串等内容时,通常就可以通过正则表达式实现:image下面是技匠整理的,经常使用到的20个正则表达式。1、校验密码强度密码的强度必须是包含大小写字母和数...转载 2019-02-26 10:04:36 · 266 阅读 · 0 评论 -
算法时间复杂度求解法
算法的时间复杂度,是刚开始接触算法和数据结构时的概念,在真正使用的时候有时候常常忘记它的推导公式。最近准备校招,把二叉树、排序、查找等这些经典的算法复习了一遍,这次把这些都整理成博客以便以后查看,复习计划接近尾声,这两天老是不在状态,学习图的时候有点晕乎乎,今天反过头来把时间复杂度的求解法整理一下,还是颇有收获,以前很多地方自己存在着理解误差。希望对大家也有所帮助,有不对的地方还请多指教。在...转载 2019-04-10 15:16:33 · 403 阅读 · 0 评论 -
python爬虫利器 pyppeteer(模拟浏览器) 实战
现在有新方法可以搞定这个模拟登陆了,不会被检测出来,可以完美的绕过对window.navigator.webdriver的检测,pyppeteer是个好东西!需要用到的python包:asyncio、pyppeteer友情提醒一下,第一次运行pyppeteer的会下载chromium,速度很慢慢慢慢,还有可能失败。务必耐心等待!!!然后,这个pyppeteer对网速和电脑运行速度还有一定的要求...原创 2019-05-05 14:46:45 · 9154 阅读 · 1 评论 -
Linux系统 Ubuntu16.04、Centos 和Window安装python3.6 安装pip
Ubuntu16.04命令安装python3.6sudo apt-get install software-properties-commonsudo add-apt-repository ppa:jonathonf/python-3.6##检查包并安装sudo apt-get updatesudo apt-get install python3.6*安装pip3* :curl ht...原创 2018-10-18 14:32:55 · 2239 阅读 · 0 评论 -
使用python crontab设置linux定时任务
熟悉linux的朋友应该知道在linux中可以使用crontab设置定时任务。可以通过命令crontab -e编写任务。当然也可以直接写配置文件设置任务。crontab的用法:crontab file [-u user] 用指定的文件替代目前的crontabcrontab - [-u user] 用标准输入替代目前的crontabcrontab -l [user] ...原创 2019-08-28 11:40:24 · 400 阅读 · 0 评论 -
Python 定时任务APScheduler(Flask)
1.安装 sudo pip install apschedulerAPScheduler 使用起来还算是比较简单。运行一个调度任务只需要以下三部曲。新建一个 schedulers (调度器) 。添加一个调度任务(job stores)。运行调度任务2.基础组件APScheduler 有四种组件,分别是:调度器(scheduler),作业存储(job store),触发器...原创 2018-10-15 17:44:29 · 4552 阅读 · 0 评论 -
Python 定时任务Celery(Flask)
Celery 是一个异步任务队列。你可以使用它在你的应用上下文之外执行任务。总的想法就是你的应用程序可能需要执行任何消耗资源的任务都可以交给任务队列,让你的应用程序自由和快速地响应客户端请求。使用 Celery 运行后台任务并不像在线程中这样做那么简单。但是好处多多,Celery 具有分布式架构,使你的应用易于扩展。一个 Celery 安装有三个核心组件:Celery 客户端: 用于发布后台作...原创 2018-10-15 16:49:20 · 5569 阅读 · 0 评论 -
Python正则表达式
正则表达式的定义正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Ex...原创 2018-05-20 13:01:12 · 239 阅读 · 0 评论 -
网络概述、UDP编程与创建socket套接字
1. 网络的定义在电的系统中,由若干元件组成的用来使电信号按一定要求传输的电路或这种电路的部分,叫网络。现在一般指“三网”:电信网络、有线电视网络、计算机网络。狭义的含义即因特网。抽象意义上的网络。比如城市网络、交通网络、交际网络等。端口是两个进程(应用程序)在同一台电脑或者不同电脑之间通信的标识。每一款应用的绑定的端口不一样,数据不会发错。在同一台电脑中,两个进程的端口不能相同,如果已经存在,...原创 2018-05-20 13:00:05 · 528 阅读 · 0 评论 -
Python的进程与队列
多任务:如果有多件事情是同时进行,我们把这种情况叫做多任务。Linux 是真正的多任务、多用户操作系统,windows是多任务操作系统,但不是真正意义上的多用户操作系统串行做完一件事在做另一件事并发和并行并发(Concurrent):在多核系统里的,同时执行多个进程,一般会情况下会有些进程没有机会执行,这种情况是并发。并行(Parallel):在多核系统里,同时执行多个进程,这些进程都有机会执行,...原创 2018-05-20 12:59:00 · 739 阅读 · 0 评论 -
Python中的垃圾回收机制
import sys sys.getrefcount()查看引用计数字符串中间有空格!?等会重新创建新的字符串 总结1. 小整数[-5,257)共用对象,常驻内存,不会被释放。2. 单个字符共用对象,常驻内存。3. 单个单词,不可修改,默认开启intern机制,共用对象,引用计数为0,则销毁 。4. 大整数不共用内存,引用计数为0,销毁 .5. 数值类型和字符串类型在 Python 中都是不可变...原创 2018-05-18 20:54:51 · 1524 阅读 · 0 评论 -
Python中 生成器、迭代器、闭包、装饰器、元类
生成器(generator)在Python中,这种一边循环一边计算的机制,称为生成器:generator。创建生成器方法1--根据列表推导式创建:第一种方法很简单,只要把一个列表推导式的 [ ] 改成 ( )生成器保存的是算法,每次调用 next(生成器对象) 返回当前指针指向的元素,指针到头会报StopIteration错误异常。还可以使用for in循环,指针到最后不会报异常。生成器的指针到最...原创 2018-05-18 20:54:41 · 791 阅读 · 0 评论 -
Python文件操作
文件的作用:就是把一些数据存放起来,可以让程序下一次执行的时候直接使用,加载到内存中,而不必重新制作一份,省时省力。文本文件和二进制文件从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。chr(ASCII)将ASCII 转化为字符打开文件open在Python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件open(文件名,访问模式)访问模式 说明r 以只读方式...原创 2018-05-17 15:39:38 · 239 阅读 · 0 评论 -
Python飞机大战
创建一个窗口,用来显示内容self.screen = pygame.display.set_mode((240, 400), 0, 32) #set_mode((元组),flags,depth) 元组是窗口大小 0 32默认值创建一个和窗口大小的图片,用来充当背景( pygame.image.load插入的图片)self.background = pygame.image.l...原创 2018-05-18 20:52:53 · 3593 阅读 · 0 评论 -
Python模块与列表推倒式
- .path 查看路径- __name__ 判断时在本类执行还是被引入执行- tree 树形结构- touch __init__.py 创建文件__import__("")动态导包1. 模块的介绍:为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式。在Python中,一个.py文件就称之为一个模块使用模块的好处...原创 2018-05-18 20:53:43 · 276 阅读 · 0 评论 -
Python中异常事件
异常即是一个事件,一般情况下,在Python无法正常处理程序时就会发生一个异常。异常是Python对象,表示一个错误。当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。1. 捕获异常 try...except...把可能出现问题的代码,放在try中。把处理异常的代码,放在except中except 后面可以添加错误类型except FileNotFoundError:但如果错误类...原创 2018-05-18 20:52:31 · 664 阅读 · 0 评论 -
Python 面向对象的设计模式
调用父类元素的方法1、super().__init__() 可以不加self 要传参2、父类名.__init__(self) 必须加self 要传参3、super(子类名,self).__init__()可以不加self 要传参面向对象应用--设计模式设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。1. 简单工厂...原创 2018-05-18 20:52:10 · 505 阅读 · 0 评论 -
Python 面向对象三大特征
一、 面向对象三大特征--封装面向对象的程序设计中,某个类把所需要的数据(也可以说是类的属性)和对数据的操作(也可以说是类的行为)全部都封装在类中,分别称为类的成员变量和方法(或成员函数)。这种把成员变量和成员函数封装在一起的编程特性称为封装。公有成员变量和私有成员变量:Python中,以两个下划线‘__’开头的变量都是私有成员变量,而其余的变量都属于公有成员变量。私有的成员变量只能在类的内部访问...原创 2018-05-18 20:51:51 · 2811 阅读 · 0 评论 -
Python 面向对象基础
面向过程和面向对象的区别1. 面向过程:根据业务逻辑从上到下写代码,随着时间的推移,开始使用了函数式编程,增强代码的重用性和可读性2.面向对象:将数据与函数绑定到一起,进行封装,这样能够更快速的开发程序,减少了重复代码的重写过程。同样去做一个很复杂的功能,用面向对象反而使其变得简单。注:Java和C#来说只支持面向对象编程,而Python比较灵活即支持面向对象编程也支持函数式编程类就是创建对象的模...原创 2018-05-17 15:39:53 · 262 阅读 · 0 评论