python

Python异常处理与反射相关问题总结

2021-06-17
一.异常处理 在程序开发中如果遇到一些 不可预知的错误 或 你懒得做一些判断 时,可以选择用异常处理来做. import requests while True: url = input("请输入要下载网页地址:") res = requests.get(url=url) with open('content.txt', mode='wb') as f: f.write(res.content) 上述下载视频的代码在正常情况下可以运行,但如果遇到网络出问题,那么此时程序就会报错无法正常

教你用Python+selenium搭建自动化测试环境

2021-06-17
一.环境搭建 1.安装python+pycharm软件 .python安装网址官网:https://www.python.org/about/ 根据自己的电脑系统选择最新版本 下载到本地,选择安装路径并配置好环境变量 验证安装是否成功 搜索中录入cmd 打开命令窗口 录入python显示一下版本号表示安装成功 2.pycharm软件安装地址:https://www.jetbrains.com/pycharm/download/#section=windows 根据自己的需求选择专业版或者社区版

详解Python函数print用法

2021-06-17
print函数: Python中可以直接使用的函数,可以将信息展示在控制台 print()函数可以输出哪些内容? print()函数输出的内容可以是数字 #可以输出数字 print(520) print(98.6) print()函数输出的内容可以是字符串 #可以输出字符串 print('Hello World') print("Hello World") print()函数输出的内容可以是含有运算符的表达式 #可以输出含有运算符的表达式 print(3+1) print()函数可以将

Python使用海龟绘图实现贪吃蛇游戏

2021-06-17
在实现贪吃蛇游戏时,首先需要使用python内置的turtle模块来实现创建游戏窗体与键盘按键的监听工作,然后使用freegames模块进行贪吃蛇的绘制工作. 1.turtle模块 turtle模块是python的内置模块,所以在使用前需要使用import导入该模块.代码如下: import turtle (1) 创建游戏窗体可以使用turtle模块中的setup()方法来实现.语法格式如下: turtle.setup(width=_CFG["width"],height=_CFG[&

Python turtle实现贪吃蛇游戏

2021-06-17
本文实例为大家分享了Python turtle实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 # Simple Snake Game in Python 3 for Beginners import turtle import time import random delay = 0.1 # Score score = 0 high_score = 0 # Set up the screen wn = turtle.Screen() wn.title("Snake Game by @Toky

Python实现智慧校园自动评教全新版

2021-06-17
前言 因为前面的文章中已经涉及到了登录智慧校园的验证码处理问题,所以本文将略过此过程.如登录时遇到验证码的情况,请参考此文.其实第一次使用有验证码的话,可以在浏览器先登录一次,然后再使用python代码模拟登录,验证码就没了.因为CQCET智慧校园验证码弹出是有限定条件的! 一.准备工作 导包 import json import requests import uuid from fake_useragent import UserAgent # 随机生成UserAgent 生成uuid和UA

python用海龟绘图写贪吃蛇游戏

2021-06-17
一个简单的贪吃蛇程序,供大家参考,具体内容如下 如图显示 导入海龟绘图库 from turtle import * from random import randrange 常量设置 food_x = randrange(-20, 20) * 20 food_y = randrange(-20, 20) * 20 snack = [[0, 0], [20, 0], [40, 0], [40, 20]] dir_x = 20 dir_y = 0 主函数 if __name__ == '__main

Python中函数的定义及其调用

2021-06-16
一.函数的定义及其应用 所谓函数,就是把具有独立功能的代码块组织成为一个小模块,在需要的时候调用 函数的使用包含两个步骤 1.定义函数–封装独立的功能 2.调用函数–享受封装的成果 函数的作用:在开发时,使用函数可以提高编写的效率以及代码的重用'' 函数: 函数是带名字的代码块,用于完成具体的工作需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用该任务的函数,让python运行其中的代码,你将发现,通过使用函数,程序编写,阅读,测试 和 修复都将更容易 1.定义函数 d

Python一些线程的玩法总结

2021-06-16
目录 一.线程基础以及守护进程 二.线程锁(互斥锁) 三.线程锁(递归锁) 四.死锁 五.队列 六.相关面试题 七.判断数据是否安全 八.进程池 & 线程池 一.线程基础以及守护进程 线程是CPU调度的最小单位 全局解释器锁 全局解释器锁GIL(global interpreter lock) 全局解释器锁的出现主要是为了完成垃圾回收机制的回收机制,对不同线程的引用计数的变化记录的更加精准. 全局解释器锁导致了同一个进程中的多个线程只能有一个线程真正被CPU执行. GIL锁每执行700条指令才会

教你如何使用Python实现二叉树结构及三种遍历

2021-06-16
一:代码实现 class TreeNode: """节点类""" def __init__(self, mid, left=None, right=None): self.mid = mid self.left = left self.right = right # 树类 class Tree: """树类""" def __init__(self, root=None): self.r

Python预测分词的实现

2021-06-16
目录 前言 加载模型 构建词网 维特比算法 实战 前言 在机器学习中,我们有了训练集的话,就开始预测.预测是指利用模型对句子进行推断的过程.在中文分词任务中也就是利用模型推断分词序列,同时也叫解码. 在HanLP库中,二元语法的解码由ViterbiSegment分词器提供.本篇将详细介绍ViterbiSegment的使用方式 加载模型 在前篇博文中,我们已经得到了训练的一元,二元语法模型.后续的处理肯定会基于这几个文件来处理.所以,我们首先要做的就是加载这些模型到程序中: if __name__

PyTorch模型转TensorRT是怎么实现的?

2021-06-16
转换步骤概览 准备好模型定义文件(.py文件) 准备好训练完成的权重文件(.pth或.pth.tar) 安装onnx和onnxruntime 将训练好的模型转换为.onnx格式 安装tensorRT 环境参数 ubuntu-18.04 PyTorch-1.8.1 onnx-1.9.0 onnxruntime-1.7.2 cuda-11.1 cudnn-8.2.0 TensorRT-7.2.3.4 PyTorch转ONNX Step1:安装ONNX和ONNXRUNTIME 网上找到的安装方式是通过

python 常用的异步框架汇总整理

2021-06-16
目录 正文开始 1. Tornado 2. Aiohttp 3.Sanic 4. FastAPI 5. Ruia 总结 参考资料 正文开始 asyncio 是 Python 3.4版本引入的标准库,直接内置了对异步IO的支持. asyncio 在单线程内部维护了 EventLoop 队列,然后把需要执行异步IO的任务添加到 EventLoop 队列中,至于任务的完成通过类似回调的逻辑是实现后续的任务.如果你有 JavaScript的基础那么理解python的 asyncio 很简单,关键字.语法

详解python代码模块化

2021-06-16
一.概念 1.模块化代码可以使代码易于维护和调试,并且提高代码的重用性: 2.函数可以用来减少冗余的代码并提高代码的可重用性.函数也可以用来模块化代码并提高程序的质量: 3.在python中,你可以将函数的定义放在一个被称为模块的文件中,这种文件的后缀名是.py: 4.一个模块可以包含不止一个函数,一个模块的每个函数都有不同的名字: 二.使用 1.pycharm新建模块文件夹,和模块 MFunction.py #函数进行模块化 #求最大值 def mymax(a,b): if a>b: ret=

python如何正确的操作字符串

2021-06-16
目录 0x01 字符串(string) 引号转义 拼接字符串 长字符串 索引( indexing) 运算符in 创建列表 切片赋值 0x02 字符串格式化 模板字符串 字符串方法format 0x03 如何设置格式 字段名 转换标志 格式说明 0x04 字符串方法 常量 填充方法 split 0x01 字符串(string) 字符串是 Python 中最常用的数据类型,同时支持单引号和双引号.使用双引号时打印字符串时用单引号. >>> "Hello world!" '

详解Python自动化中这八大元素定位

2021-06-16
一.find_element_by_id() find_element_by_id() 1.从上面定位到的元素属性中,可以看到有个id属性:id="kw",这里可以通过它的id属性定位到这个元素. 2.定位到搜索框后,用send_keys()方法,就可以输入文本. from selenium import webdriver driver = webdriver.Firefox() driver.get("http://www.baidu.com") # 通过id定

python自动计算图像数据集的RGB均值

2021-06-16
本文实例为大家分享了python自动计算图像数据集的RGB均值,供大家参考,具体内容如下 图像数据集往往要进行去均值,以保证更快的收敛. 代码: 创建一个mean.py,写入如下代码.修改路径即可使用 ''' qhy 2018.12.3 ''' import os import numpy as np import cv2 ims_path='C:/Users/my/Desktop/JPEGImages/'# 图像数据集的路径 ims_list=os.listdir(ims_path) R_me

详解Python中Pygame键盘事件

2021-06-16
Pygame事件 pygame.event.EventType ''' • 事件本质上是一种封装后的数据类型(对象) • EventType是Pygame的一个类,表示事件类型 • 事件类型只有属性,没有方法 • 用户可自定义新的事件类型 ''' 事件类型及属性 事件处理函数 键盘事件及类型的使用 键盘事件及属性 pygame.event.KEYDOWN #键盘按下事件 pygame.event.KEYUP #键盘释放事件 event.unicode #按键的unicode码,平台有关,不推荐使

总结Python使用过程中的bug

2021-06-16
Python使用过程中的bug 问题: 在vscode中, 使用 Windows PowerShell 运行 conda activate xxx (某个环境)切换环境时报错: If using 'conda activate' from a batch script, change your invocation to 'CALL conda.bat activate'. 原因: PowerShell 有时不好使 解决方法: 改为用 cmd 运行 问题: conda install xxxx

python 网络编程要点总结

2021-06-16
目录 1,七层网络协议 2,TCP/UDP 3,例子 4,粘包 1,七层网络协议 应表会传网数物: 应用层.表示层.会话层: (这三层又可以合并为应用层,这样就是五层网络协议[osi五层协议]) python '你好'.encoding('utf-8') 传输层: 预备如何传输.使用的端口 (port,tcp,udp): 四层路由器.四层交换机 网络层: ip(ipv4 ipv6): 路由器.三层交换机 数据链路层: mac(mac, arp协议:可以通过ip找到mac): 二层交换机.网卡(单