python知识点整理
文章平均质量分 80
记录自己对python知识点的理解
寻寻觅觅oO
这个作者很懒,什么都没留下…
展开
-
python用 xlwings库对Excel进行 字体、边框设置、合并单元格, 版本转换等操作
xlwings 其他的一些单元格读取写入操作网上很多,下面就写些如何设置单元格的 字体对齐,字体大小、边框, 合并单元格, 这些设置。import xlwings as xwapp = xw.App(visible=True, add_book=False)wb = app.books.add()sht = wb.sheets.activeb3 = sht.range('b3').........原创 2019-12-21 20:39:32 · 29660 阅读 · 43 评论 -
python元编程
1. 普通类1.1 创建普通类的执行顺序class Putong: def __new__(cls, *args, **kwargs): print("执行了 __new__ 方法。") new = super().__new__(cls, *args, **kwargs) return new # 必须有返回值 def __init__(self):原创 2021-05-06 20:58:02 · 393 阅读 · 0 评论 -
SQLAlchemy 使用笔记 (二)ORM模式
1、异常处理sqlalchemy的异常类型在sqlalchemy.exc中,导入可以如下:from sqlalchemy.exc import IntegrityError IntegrityError :当试图做一些违反列约束或表约束的事情时,就会发生这种错误。这种类型的错误通常出现在操作破坏了唯一性约束的情况下。2、事务启动事务时,数据库系统会先记录数据库的当前状态,然后再执行多个 SQL句。如果事务中的所有 SQL 语句都成功执行,那么数据库将继续正常运行,并丢弃之前的数据库状态。原创 2021-04-21 14:21:44 · 2026 阅读 · 0 评论 -
SQLAlchemy 使用笔记 (一)Core模式
1、连接数据库1.1 为 SQLite创建链接引擎from sqlalchemy import create_engine# 连接相对路径的 name.db 数据库,future=True参数可以充分利用sqlalchemy 2.0版本的性能。engine = create_engine('sqlite+pysqlite:///name.db', future=True) # 使用pysqlite接口来连接sqliteengine = create_engine('sqlite:///na原创 2021-04-19 15:27:11 · 3310 阅读 · 1 评论 -
使 python内置的print函数输出时带文件名及行号小技巧
from builtins import print as _printfrom sys import _getframe# 自定义print函数def print(*arg, **kw): s = f'{_getframe(1).f_lineno} 行:' # 注此处需加参数 1。 return _print(s, *arg, **kw)print("此处显示行数。") 运行结果为:9行:此处显示行数。说明:sys模原创 2021-03-30 15:17:16 · 2059 阅读 · 0 评论 -
apscheduler 定时任务笔记
1、创建一个简单的定时任务建一个每隔多少时间运行一次的任务进行说明from apscheduler.schedulers.blocking import BlockingSchedulerfrom datetime import datetimedef my_clock(): print(f"调用时间: {datetime.now()}")scheduler = BlockingScheduler() # 实例化一个调度器# 每隔2秒调用一次 my_clock()函数s原创 2021-03-29 00:09:16 · 6483 阅读 · 4 评论 -
pyside6 使用整理——1、开始示例
1、启动 designer进入 ……\Lib\site-packages\PySide6 文件夹中 ,双击 designer.exe 启动。2、使 ui 文件生成对应的python代码找到 pyside6 库的安装位置:……\Lib\site-packages\PySide6 文件夹中的 uic.exe可以用来使ui文件生成python代码。在cmd中输入:……\Lib\site-packages\PySide6\uic.exe -g python name.ui > name.py-原创 2021-03-16 19:46:40 · 7932 阅读 · 0 评论 -
python中global、local、nonlocal及闭包的特殊使用补充
先看下下面的闭包函数def outer(x): def inner(y): nonlocal x # 使用 nonlocal,使内部函数可以修改外部函数的变量。 x = x + y return x + y return innerfun = outer(10)print(fun(10)) # 第一个 fun(10)print(fun(10)) # 第二个 fun(10)print(fun(10)) # 第三个原创 2020-09-04 00:00:40 · 403 阅读 · 0 评论 -
python字符串格式化常用方法
python3.6以上,字符串格式化方式。num = 3.1415926f_str = f'圆周率为 {num:*^15.4f}' print(f_str) 输出为:圆周率为 ****3.1416*****说明:* :为填充的字符;^ :为居中对齐;15 : 格式化后字符串长度为15个字符;.4f:浮点数的精度保留4位小数(自动四舍五入)。以下是一些具体细节说明:# 1、格式化“精度”# 1.1 num是浮点数时,且后面不加类型的情原创 2020-08-22 23:06:02 · 313 阅读 · 0 评论 -
python 利用logging进行日志输出的技巧
写代码用print()函数进行简单调试时,有时候print()写的多了,可能会不知道到底是哪一行代码输出的内容。当不需要调试时,又得手动的一个个去删除或注释掉print(),这有点麻烦。于是写了一个利用logging来替代print()的普通输出功能,且曾加了一些输出标记,可以关闭输出,运行计时等一些功能的包printlog (名字就是print和log的组合)。用法如下:from printlog import Ptlog # 导入 printlogimport time# 参原创 2020-05-11 23:52:03 · 658 阅读 · 0 评论 -
python 中 matplotlib 使用详解
文章目录1、原理1、原理matplotlib 总的来说有三个“元素”组成:FigureAxesSubplotLine2D原创 2020-02-24 00:17:47 · 3491 阅读 · 1 评论 -
python functools 使用详解
文章目录1、functools.cmp_to_key(func)1、functools.cmp_to_key(func)此函数主要用作将Python 2 程序转换至新版的转换工具,以保持对比较函数的兼容。因为新版 python,sorted(iterable, *, key=None, reverse=False) 函数中 key 调用的函数,只能传入一个参数。 而旧版的 key 调用函数时...原创 2020-02-04 19:14:47 · 2557 阅读 · 0 评论 -
python itertools 使用详解
文章目录itertools无穷迭代器itertools无穷迭代器迭代器说明count( start [,step])创建一个从 start 开始,步长为 step 的迭代器。cycle( iterable )创建一个从 iterable 中循环取出元素的迭代器。repeat( elem [,n] )重复 elem元素 n次。 n为空时,重复无穷次。...原创 2020-02-02 23:55:57 · 8333 阅读 · 4 评论 -
tkinter 使用详解
文章目录1、窗口设置1、窗口设置import tkinter as tkroot = tk.Tk()root.title('窗口参数设置') # 设置窗口标题。root.iconbitmap(r'.\kenan.ico') # 设置窗口左上角的图标。"获取电脑屏幕尺寸大小"window_x = root.winfo_screenwidth()wind.........原创 2020-01-22 23:13:58 · 14781 阅读 · 0 评论 -
turtle 鼠标/按键 事件绑定 及 命令大全
普通的事件绑定,有如下这些,官方文档都有介绍了,就略过了 :listen() :监听onkey() | onkeyrelease() :当键盘按下并释放onkeypress() :当键盘按下onclick() | onscreenclick() :当点击屏幕下面介绍的是利用 bind 绑定事件:import turtle as tu# 实例化一张画布。# 也可以不用实例化,直接...原创 2020-01-20 18:39:59 · 14903 阅读 · 0 评论 -
turtle库中setup、screensize、setworldcoordinates 的详细解释
setup 和 screensize 使用详解setup 方法用来设置 窗口 的 大小 和 位置。screensize 方法用来设置 画布 的 大小 和 背景色。这两个方法的参数说明网上很多,官网也有,这里就不多做解释。这里只说明 这两个方法中都共有一个参数 大小 设置……1、画布比窗口小的情况。import turtle as tutu.setup(400, 400) ...原创 2019-12-17 20:39:34 · 9499 阅读 · 1 评论 -
python3.8 异步 asyncio 执行顺序
先看几种协程的执行情况:1、 协程函数中没有 await,即没有可等待对象。 且 调用函数 main() 也是直接用 await 调用,即不先创建 task。import asyncioimport timeasync def first_fun(delay): print('开始执行 first_fun 函数。') # await asyncio.sleep(del...原创 2019-12-13 20:35:53 · 5718 阅读 · 2 评论 -
python中 线程 的执行顺序,及利用 队列 进行通信
一、线程间的执行顺序。1、在所有线程都 start() 后,再join()。import queueimport threadingimport time, random# 定义一个放入元素的函数def put_in(Q, items): for i in range(items): Q.put(i) print(f'{threading.cu...原创 2019-11-27 19:25:55 · 864 阅读 · 0 评论 -
python yield 生成器用法
总结:可以把send()看成是next()的升级版。send()不仅能像next()一样触发生成器的一个迭代,还能传入一个值给 yield语句。def func(): y = 1 while True: x = yield y y += 1 print('接收了x = {}'.format(x))f = func() ...原创 2019-05-26 21:46:29 · 409 阅读 · 1 评论 -
python threading 线程
1、创建线程 方法 一import timeimport threadingdef countdown(n): print('子线程名字:{}'.format(threading.current_thread().name)) # 获取当前线程对象的名字。 while n > 0: print('T-minus:{}'.format(n)) ...原创 2019-06-12 18:29:44 · 376 阅读 · 0 评论 -
python 线程池 concurrent 模块的 futures 用法
concurrent.futures 是 3.2 中引入的新模块,它为异步执行可调用对象提供了高层接口。 可以使用 ThreadPoolExecutor 来进行多线程编程,ProcessPoolExecutor 进行多进程编程,两者实现了同样的接口,这些接口由抽象类 Executor 定义。1、多线程用法 之 mapfrom concurrent import futuresim...原创 2019-06-13 18:24:50 · 2711 阅读 · 0 评论 -
python multiprocessing 进程笔记
1、创建进程import time, osimport multiprocessing as mpdef digui(n): print(__name__, mp.current_process().name ,'开始时间:',time.ctime()) print(f'父进程的ID为:{os.getppid()},子进程的ID为:{os.getpid()}。') ...原创 2019-06-02 23:14:33 · 554 阅读 · 0 评论 -
python subprocess调用外部进程
Popen方法import subprocess, sysp1 = subprocess.Popen('ping 127.0.0.1'.split(), stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=...原创 2019-06-03 20:08:53 · 768 阅读 · 0 评论 -
python 协程库 asyncio 使用
asyncio提供的框架以事件循环(event loop)为中心,程序开启一个无限的循环,程序会把一些函数注册到事件循环上。当满足事件发生的时候,调用相应的协程函数。事件循环loop调用方法loop.run_until_complete(…)驱动传入的参数,它的参数是一个future或者协程。如果是协程,run_until_complete方法和wait函数一样,把协程包装进一个Task对象中。...原创 2019-06-16 00:28:49 · 3058 阅读 · 1 评论 -
python标准库 datetime的 astimezone设置时区时遇到的坑
datetime有四个主要的模块:1• date 处理年、月、日。2• time 处理时、分、秒和分数。3• datetime 处理日期和时间同时出现的情况。4• timedelta 处理日期和/ 或时间间隔。1、datetime 获取当前的本地日期和UTC日期:# 从 datetime 中导入 datetime 模块。from datetime impor...原创 2019-06-26 19:00:35 · 28455 阅读 · 5 评论 -
python的 datetime 和 time 的内置标准库简单使用
datetime 有四个主要的模块:1• datetime 处理日期和时间同时出现的情况。2• date 处理年、月、日。3• time 处理时、分、秒和分数。4• timedelta 处理日期和/ 或时间间隔。from datetime import datetimeutc_now = datetime.utcnow() # 获取当前的UTC时间。now = datet...原创 2019-06-26 23:20:24 · 746 阅读 · 0 评论 -
python 单元测试 unittest 标准库
import unittest # 导入标准库中的 unittestdef add(a, b): # 创建一个需要被测试的函数,供下面测试时调用。 return a*bclass My_test(unittest.TestCase): # 创建一个测试类,需要继承 unittest.TestCase。 def test_one(self): ...原创 2019-07-03 23:09:25 · 268 阅读 · 0 评论 -
python 装饰器 执行逻辑
1、首先新建两个装饰器和一个函数:def log(func): # 装饰器1 print('{} 装饰器外层内容。'.format(log.__name__)) # 这行代码是为了查看装饰器装饰函数, # 但未调用函数时, 装饰器的状态。 def wrapper(*args, **kw):...原创 2019-05-30 23:24:04 · 423 阅读 · 1 评论