Python
文章平均质量分 57
Python教程
Sunny_Future
微笑面对人生。
展开
-
python3用两个栈实现一个队列
当stack_in用来接收新入队的元素时,stack_out用来管理出队操作。只有在stack_out为空的时候,你才需要把所有 stack_in 的元素转移到 stack_out,维持了队列先进先出的逻辑。两个桶(栈),一个用来放苹果(入栈),一个用来取苹果(出栈)。如果 stack_out为空,将 stack_in的所有元素弹出压入 stack_out。然后,从stack_out弹出第一个元素(这个元素相当于队列的头部元素)并返回这个元素。有两个栈,stack_in和stack_out。原创 2024-06-27 00:17:08 · 333 阅读 · 0 评论 -
python3按列表元素中字典的value排序
sort,指定排序sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。原创 2024-06-12 00:03:05 · 170 阅读 · 0 评论 -
python3按字典的值排序
sorted(d1.items(), key=lambda x:x[1])调用返回一个按字典升序排列的键值对列表。这里,d1.items()返回字典的键值对列表,key=lambda x:x[1]指定键值对中的值(即x[1])进行排序。通过设置reverse=True参数来改变排序方向,实现降序排序。当然,也可以通过dict()函数,返回排序后的字典。原创 2024-06-11 23:57:47 · 147 阅读 · 0 评论 -
py并发编程实践-demo
多进程实现并发请求api。原创 2023-11-17 22:14:42 · 363 阅读 · 0 评论 -
Python中运行取消Python console模式
在Python里run的时候突然会发现,进入的不是run模式,而是console模式,这种运行模式能保留你每次的运行历史,因为会重开一个运行小页面,关闭操作如下:原创 2023-07-28 00:49:54 · 708 阅读 · 0 评论 -
django的ORM模板的fake更新
django存量数据表的migraions记录丢失,若要更新表结构,则需用到fake原创 2023-07-27 20:46:08 · 928 阅读 · 0 评论 -
py实现经典排序之冒泡和快排
冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要 Ο(nlogn) 次比较。在最坏状况下则需要 Ο(n2) 次比较,但这种状况并不常见。原创 2023-05-23 23:54:46 · 336 阅读 · 1 评论 -
linux快速安装conda
conda 分为 anaconda 和 miniconda,这里使用 minicoda。原创 2023-05-08 23:50:22 · 200 阅读 · 0 评论 -
idea打包maven项目及python3调用jar包
解决java组件依赖的问题:将依赖java实现的程序封装后,打成可执行的jar包,再通过python3执行调用即可。1)选择合适的框架,如maven,并引入依赖包(pom.xml)2)封装主程序后,通过ieda快捷打包(包含所依赖的包)3)python3调用jar包。原创 2022-10-24 08:30:00 · 966 阅读 · 1 评论 -
django执行原生SQL语句
1、原生SQL用法概述django可以执行原生SQL语句,主要分读和写两类,用法如下:读(查):xxxModel.object.raw()写(增删改):connection.cursor()2、应用案例2.1 django执行原生SQL 读 操作django内置方法中的raw(),可以帮助我们直接执行SQL的原生语句,返回QuerySet 集合对象。# appName: test# tableName in model.py: Book# tableName in DB: test_b原创 2022-05-23 00:22:08 · 4671 阅读 · 2 评论 -
pip安装包提示权限不够PermissionError: [Errno 13] Permission denied:
权限问题pip 安装 django显示 权限不够解决方案加上 --user 即可pip install django --user原创 2022-03-20 23:33:08 · 1932 阅读 · 0 评论 -
win 修改pip默认安装路径
win系统,pip install django后,出现命令找不到,结果发现是pip默认路径并未设置path,解决方案:1)django-admin设置path; 2)修改pip默认配置修改pip默认配置1、查看默认配置python -m site2、修改默认配置# D:\Program files\Python37\Lib\site.py#ENABLE_USER_SITE = NoneENABLE_USER_SITE = True#USER_SITE = None#USER_B原创 2022-03-20 21:48:56 · 1972 阅读 · 0 评论 -
py并发编程:GIL锁、进程、线程、协程
1、进程、线程概念引入1.1 进程的由来进程就是一个程序在一个数据集上的一次动态执行过程。是系统进行资源分配和调度的基本单位,是操作系统结构的基础。进程一般由程序、数据集、进程控制块(PCB)三部分组成。我们编写的程序用来描述进程要完成哪些功能以及如何完成;数据集则是程序在执行过程中所需要使用的资源;进程控制块用来记录进程的外部特征,描述进程的执行变化过程,系统可以利用它来控制和管理进程,它是系统感知进程存在的唯一标志。这里需要注意的是程序和进程的区别。一个程序是一个可执行的文件,原创 2021-04-20 21:43:20 · 927 阅读 · 5 评论 -
py网络编程socket实践
1、创建套接字对象Linux 中的一切都是文件,每个文件都有一个整数类型的文件描述符;socket 也可以视为一个文件对象,也有文件描述符。import socketsock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)# <socket.socket fd=496, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0>print(sock)原创 2021-04-19 14:02:53 · 527 阅读 · 3 评论 -
SRE的优秀文档库
0、标杆文档业务运维与SRE,十年运维总监的自我修养 :https://mp.weixin.qq.com/s/pyIycLebwnekcwDyUeOHcQ1、站点类书栈网:https://www.bookstack.cn程序员一站导航:http://tooool.org白月黑羽:http://www.byhy.net/tut/py/extra/multi_thread/Ledge 知识和工具平台:https://github.com/phodal/ledgehttps://devop原创 2021-03-29 14:02:15 · 495 阅读 · 1 评论 -
selenium の demo
1、selenium 概述Selenium 是web自动化测试工具集,包括IDE、Grid、RC(selenium 1.0)、WebDriver(selenium 2.0)等。2、环境部署 (Chrome)下载 与 浏览器版本 对应的 驱动,放置到 开发语言(python)的执行脚本里,提供给py 即可。pip install selenium2.1 查看 浏览器版本2.2 下载驱动链接如下:http://npm.taobao.org/mirrors/chromedriver/h原创 2021-03-28 19:47:48 · 410 阅读 · 2 评论 -
网络编程:【TCP】&&【socket】&&【OSI】
1、计算机网络三要素网络编程:使用编程语言实现多台计算机的通信。网络编程三大要素。(1)IP地址: 网络中每一台计算机的唯一标识,通过IP地址找到指定的计算机。(2)端口:用于标识进程的逻辑地址,通过端口找到指定进程。(3)协议: 定义通信规则,符合协议则可以通信,不符合不能通信。一般有TCP协议和UDP协议。1.1 TCP协议TCP(Transmission Control Protocol,传输控制协议)是一种**面向连接的、可靠的、基于字节流的通信**协议,数据在传输前要建立连接,传输完原创 2021-03-22 23:24:05 · 215 阅读 · 0 评论 -
py异常处理
异常处理1、异常处理1.1 捕获所有异常1.2 捕获指定异常1.2.1 万能异常1.2.2 关于 `小e 对象` 的用法1.2.3 关于`异常跟踪定位` 的用法1.3 捕获多个异常1.3.1 处理多个异常,==不区分优先级==1.3.2 处理多个异常,`区分优先级`1.4 异常中的 else1.5 异常中的 finally1.6 `raise 主动触发异常`1.7 常见异常类型1、异常处理当发生异常时,我们就需要对异常进行捕获,然后进行相应的处理。python的异常捕获常用try…except…结构,把原创 2021-03-21 23:12:00 · 376 阅读 · 2 评论 -
py-经典排序
猪哥:算法简介猪哥:十大排序算法一行代码实现快排测快排原创 2021-03-15 21:45:01 · 218 阅读 · 0 评论 -
py面向对象特性:继承、封装、多态、鸭子模型、魔法方法
1、面向对象特性之继承面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机制。通过继承创建的新类称为子类或派生类,被继承的类称为基类、父类或超类。class 派生类名(基类名) ...1.1 继承的基本使用继承者是被继承者的特殊化,它除了拥有被继承者的特性外,还拥有自己独有得特性。例如猫有抓老鼠、爬树等其他动物没有的特性。同时在继承关系中,继承者完全可以替换被继承者,反之则不可以,例如我们可以说猫是动物,但不能说动物是猫就是这个道理,其实对于这个我们将其称之为“原创 2021-03-13 19:48:55 · 757 阅读 · 3 评论 -
logging日志切割
1、logging 概述1.1 logging日志模块四大组件组件名称对应类名功能描述日志器Logger提供了应用程序可一直使用的接口处理器Handler将logger创建的日志记录发送到合适的目的输出过滤器Filter提供了更细粒度的控制工具来决定输出哪条日志记录,丢弃哪条日志记录格式器Formatter决定日志记录的最终输出格式logging模块就是通过这些组件来完成日志处理的,上面所使用的logging模块级别的函数也是通过这些组件对应原创 2021-03-13 16:05:31 · 1071 阅读 · 0 评论 -
py读写修改Excel之xlrd&xlwt&xlutils
py读写修改常用的三种方法xlrd:用于读取 Excel 文件xlwt:用于写入 Excel 文件xlutils:用于操作 Excel 文件的实用工具,比如复制、分割、筛选等1. 写入excel实现效果上代码from datetime import datetimeimport xlwtfont0 = xlwt.Font()# font0.name = 'Times New Roman' # 适用于字母或数字font0.name = '宋体' # 适用于原创 2021-03-09 13:08:17 · 1928 阅读 · 11 评论 -
py发邮件~
import smtplibfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.mime.application import MIMEApplicationfrom email.mime.image import MIMEImage# 收件人to_lst = [ "email_address_01@126.com", "email_addres原创 2021-03-01 23:24:18 · 358 阅读 · 3 评论 -
Jenkins + python 构建教程系列
Jenkins详细教程使用PyInstaller构建Python应用Python项目在Jenkins中的自动化测试实践Jenkins部署Python项目实战python 自动化测试Jenkins 持续集成jenkins+python自动化测试持续集成教程python:jenkins部署及自动化上线...原创 2021-02-22 20:54:08 · 833 阅读 · 0 评论 -
py中 is 与 == 区分
Python 中,== 用来判断两个变量的值是否相同,is 用来判断两个变量是否指向同一块内存空间。Python中对象包含的三个基本要素:id(身份标识)、type(数据类型)和value(值)Python 为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁内存空间。而Python 对小整数的定义是 [-5, 257),只有数字在-5到256之间它们的id才会相等,超过了这个范围就不行了,同样的道理,字符串对象也有一个类似的缓冲池,超过区间范围内自然不会相等了一文读懂https:/.原创 2021-02-05 00:11:53 · 476 阅读 · 0 评论 -
变量赋值&深浅copy
1、变量赋值list1与list2指向的是同一个内存地址,所以他们是完全一样的。在举个例子,比如张三李四合租在一起,那么对于客厅来说,他们是公用的,张三可以用,李四也可以用,但是突然有一天张三把客厅的的电视换成投影了,那么李四使用客厅时,想看电视没有了,而是投影了,对吧?list1,list2指向的是同一个列表,任何一个变量对列表进行改变,剩下那个变量在使用列表之后,这个列表就是发生改变之后的列表。list1 = [1, 2, 3, [22, 33]]list2 = list1list2.appe原创 2021-02-04 23:41:11 · 297 阅读 · 2 评论 -
py常用模块os&sys
1、time模块在Python中,通常有这三种方式来表示时间:时间戳、元组(struct_time)、格式化的时间字符串:时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行type(time.time()),返回的是float类型。格式化的时间字符串(Format String): ‘1988-03-16’元组(struct_time) :struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周原创 2021-01-30 21:29:00 · 293 阅读 · 1 评论 -
py文件操作
Python 也具有操作文件(I/O)的能力,比如打开文件、读取和追加数据、插入和删除数据、关闭文件、删除文件等。1、打开文件(open函数)在 Python中,如果想要操作文件,首先需要创建或者打开指定的文件,并创建一个文件对象,而这些工作可以通过内置的 open() 函数实现。open() 函数用于创建或打开指定文件,该函数的常用语法格式如下:file = open(file_name [, mode='r' [ , buffering=-1 [ , encoding = None ]]])此原创 2021-01-30 20:14:08 · 977 阅读 · 0 评论 -
vue+django前后端分离之hippo前端初始化(npm && vue-cli)
1、node.js 安装1.1 nvm方式Vue CLI 需要 Node.js 8.9 或更高版本 (推荐 8.11.0+)。由于node.js的版本更新迭代很快,所以你可能会遇到同一台电脑来维护多个版本的node.js开发的项目,那么自己电脑上对于多个nodejs的解释器管理起来就比较困难了,所以你可以使用 nvm 或 nvm-windows在同一台电脑中管理多个 Node 版本。 nvm工具的下载和安装:win: https://www.jianshu.com/p/d0e0935b150a原创 2021-01-19 23:39:35 · 631 阅读 · 0 评论 -
python3类型注释annotations实用案例
1、类型注解简介Python是一种动态类型化的语言,不会强制使用类型提示,但为了更明确形参类型,自python3.5开始,PEP484为python引入了类型注解(type hints)示例如下:2、常见的数据类型int,long,float: 整型,长整形,浮点型bool,str: 布尔型,字符串类型List, Tuple, Dict, Set: 列表,元组,字典, 集合Iterable,Iterator: 可迭代类型,迭代器类型Generator:生成器类型Sequence:原创 2021-01-18 22:58:45 · 4552 阅读 · 2 评论 -
py_docs
官方文档 - 内置函数python3-cookbook原创 2021-01-18 21:05:47 · 157 阅读 · 1 评论 -
解决win加载github丢包访问失败
1、问题复盘打开github超级慢,甚至打不开ping发现有数据丢包2、解决办法点击,查询就近DNSwin 修改HOST文件,添加HOST解析一般情况下不能直接修改,可先将文件f复制一份到桌面,添加两条记录后,再移动到HOST文件地址,以替换之实际文件名以各自系统为准1) HOST文件名C:\Windows\System32\drivers\etc\HOST2) hosts文件名C:\windows\system32\drivers\etc\hosts原创 2020-12-12 13:19:25 · 1597 阅读 · 1 评论 -
python画图小例(玫瑰、佩奇、哆啦A梦、美队盾牌)
玫瑰from turtle import *import timesetup(600, 800, 0, 0)speed(0)penup()seth(90)fd(340)seth(0)pendown()speed(5)begin_fill()fillcolor('red')circle(50, 30)for i in range(10): fd(1) left(10)#circle(40, 40)#for i in range(6): f.原创 2021-01-09 21:59:13 · 1008 阅读 · 0 评论 -
python2与python3区别录
1、简述你了解的Python2和Python3的区别?默认解释器编码 - 2.x,python解释器默认使用ascii编码(只包含字母、数字、英文标点) - 3.x,python解释器默认使用utf-8编码(所有文字都可以包含) - sys.getdefaultencoding() # 查看默认编码字符串 在 Python2 中,字符串有两个类型,一个是 unicode,一个是 str,前者表示文本字符串,后者表示字节序列 不过两者并没有明显的界限,开发者也感觉很混乱,不明原创 2020-12-27 00:04:58 · 201 阅读 · 0 评论 -
python字符串格式化、运算符优先级、进制转化、编码回顾
1、字符串格式化Python中有三种字符串格式化的方式:%,是一种传统的方式。 format,升级版。(建议)f,【Python3.6及以后】1.1 %1.1.1 %s充当占位符,一般情况下是占字符串类型# 方式1tpl = "我的名字叫%s,我是一个帅靓仔" %"andy"# 方式2name = "andy"tpl = "我的名字叫%s,我是一个帅靓仔" %name# 方式3name1 = "andy"name2 = "barry"tpl = "我的名字叫%s,我是原创 2020-12-23 00:19:33 · 1531 阅读 · 4 评论 -
PEP 8: invalid escape sequence ‘\d
PEP 8: invalid escape sequence '\d pycharm解决办法:\d 前边再加一个\re_path('books/(?P<year>\\d{4})/(?P<month>\\d{2})/$', views.books_year_month),原创 2020-11-22 14:21:11 · 2222 阅读 · 1 评论 -
前端基础之css常用语法
一、CSS 介绍 CSS (Cascading Style Sheets,层叠样式表)是用来控制网页在浏览器中的显示外观的声明式语言。浏览器会根据 CSS 的样式定义将其选定的元素显示为恰当的形式。一条 CSS 的样式定义包括属性和属性值,它们共同决定网页的外观。 CSS 与 HTML 和 JavaScript 并称 Web 三大核心技术。一般用它来定义 HTML 元素 的样式,但它也能用于其他标记语言,如 SVG 和 XML。 &nb原创 2020-10-31 23:48:32 · 826 阅读 · 1 评论 -
手撸socket服务器交互web网页数据
实现效果前端form表单数据 及传参后台接收到键值对数据,并返回数据(注意遵循网络通信协议,http协议)返回展示网站首页代码实现1、socket 后台socket 起一个server端,监听服务import socketsock = socket.socket()sock.bind(('127.0.0.1', 8899))sock.listen(5)while 1: req_sock, address = sock.accept() data原创 2020-10-19 00:21:11 · 774 阅读 · 1 评论 -
django操作数据库语句大全
django查询数据库语句大全Django 提供了一系列 的QuerySet筛选方法,用于改变 QuerySet 返回的结果类型或者SQL查询执行的方式。1、增2、查2.1 单向查2.2 多项查3、改4、删5、当字段为变量时,操作语句6、反射待学习:http://doc.codingdict.com/django/index.htmlhttp://doc.codingdict.com/django/topics/db/queries.html#queryset-model-examp原创 2020-09-24 21:22:36 · 508 阅读 · 1 评论 -
python项目之购物商城面向对象实现
python 项目 目录结构 与 面向对象 练习标题:一个shopping购物商城项目的demo项目git地址https://github.com/sunny-future/shopping.git实现的功能如下:用户注册用户名重复判别用户登录用户密码sha1加密登录查看商品列表登录态,才可查看商品列表加入购物车登录态,才可加入购物车清空购物车登录态,才可清空购物车退出登录态,才可退出功能记录日志日志文件按天切割保存安装g原创 2020-09-19 22:57:21 · 1098 阅读 · 1 评论