Python
Python - 使用pyinstaller如何打包多个py文件
0.前言: 为了更好的管理python代码,经常我们需要把独立的功能/类写成一个单独的py文件,以方便查阅和读取修改。一般我们使用pyinstaller打包只是打包单一文件即可。但是打包多个文件就比较复杂 正文: 1.我的文件结构如图。一个主文件,一个模块文件、还有两个图标文件 命令添加: pyinstaller --onefile --add-data "data
提取猫眼电影正在热映电影以及评分
目标:提取热映电影的名称和评分 首先获取响应内容 from fake_useragent import UserAgent import requests # url地址 url = 'https://www.maoyan.com/films?showType=1' # 设置请求头 headers = {'User-Agent': UserAgent().chrome} # 发送请求 res
python3常用库之解析命令行参数argparse
在命令行程序中需要获取命令行参数可以使用sys库和argparse库。sys库可用于处理简单的命令行参数,argparse库可用于处理复杂的命令行参数。 # argparse 解析命令行参数 import argparse, sys def main(): # 定义一个ArgumentParser实例:参数分别为程序名、描述、说明信息 parser = argparse.Ar
python3常用库之Base64编码
Base64是一种用64个字符来表示任意二进制数据的方法。 import base64 by = "abc中文".encode() b = base64.b64encode(by) print(by) # b'abcxe4xb8xadxe6x96x87' print(b) # b'YWJj5Lit5paH' by2 = base64.b64decode(b) print(by2) # b
python3常用库之collections集合库
namedtuple # namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来引用tuple的某个元素。 # 用namedtuple可以很方便地定义一种数据类型,它具备tuple的不变性,又可以根据属性来引用 Coord = collections.namedtuple("Coord", ["x", "y"]) p = Co
python3常用库之datetime库
日期时间 from datetime import datetime, timedelta, timezone now = datetime.now() print(now) # 2024-02-02 14:27:12.247121 dt = datetime(2023, 12, 31, 12, 30, 00) print(dt) # 2023-12-31 12:30:00 # 时间戳
Pandas时间序列 处理方法
当然可以,以下是Pandas处理时间序列的常用方法总结,代码和文字说明均使用Markdown格式。 1. 日期解析 将字符串日期转换为Pandas的datetime对象。 2. 日期范围生成 生成一个给定频率的时间序列。 3. 日期索引 设置日期列为索引。 4. 日期重采样 将时间序列从一个频率转换到另一个频率。 5. 时间偏移 对日期进行加减操作。 6. 时间序列的切片 根据日期范围进
python3常用内置函数及常用库functools使用
常用内置函数 # lambda 函数 ----------------------------- add = lambda a, b, c: a + b + c print(add(1, 2, 3)) # 6 # sorted 函数 ----------------------------- a_l = [1, 3, 5, 7, 0, -1, -9, -4, -5, 8] print(sor
连分数分解(心情不好,爬起,遂有此烂文)
关于标题 今晚的月色深藏云间。(呜呜呜我就是在发癫) 连分数分解问题和勒让德定理关系较多,至少知道什么是连分数什么是勒让德定理。 维纳攻击 wiener attack 攻击条件: 攻击原理: 适用情况和例题 出现多因子+大数时考虑连分数分解 [湖湘杯 2021]signin 附件: from Crypto.Util.number import * from secret imp
python3常用库之哈希算法hashlib和hmac使用
hashlib import hashlib # MD5 是最常见的哈希算法,速度很快,生成结果是固定的128 bit/16字节,通常用一个32位的16进制字符串表示。 md5 = hashlib.md5() md5.update("hello".encode()) print(md5.hexdigest()) # 5d41402abc4b2a76b9719d911017c592 # 数据
Coppersmith定理
原理 用到格基规约和LLL算法。。。 啊?你问那是什么?去搜吧,反正我没看懂。 实现 有一个 e 阶的多项式 f, 那么可以: 在模 n 意义下,快速求出 以内的根 给定 β,快速求出模某个 b 意义下较小的根,其中b≥,是 n 的因数。 一般采用sage下的small_roots(X=2^kbits,beta=β)。 应用 coppersmith定理应用最多的是高位攻击一类,通过该定
BaseCTF复现-Crypto
前言 base打了没几天就军训了,前两周的还打了打,军训烤红薯了,后面上的题都懒得看了,趁着国庆假期,闪击了下苏州,人太多了,还不如待在学校水一水。因为是复现平台做的,顺序比较乱。 铜匠 附件: from Crypto.Util.number import getPrime, bytes_to_long #from secret import flag flag=b'XXXX' p = g
python3常用库之itertools使用
无限迭代器 import itertools # 无限迭代器 # 无限序列只有在for迭代时才会无限地迭代下去,如果只是创建了一个迭代对象,它不会事先把无限个元素生成出来,事实上也不可能在内存中创建无限多个元素。 natuals = itertools.count(1) odd = itertools.count(0, 2) cs = itertools.cycle("ABC") ns = i
python3数据库操作及ORM框架sqlalchemy使用
sqlite3 import sqlite3 try: # 连接到SQLite数据库,数据库文件是test.db,如果文件不存在,会自动在当前目录创建: conn = sqlite3.connect("test.db") # 创建一个Cursor cursor = conn.cursor() # 执行SQL语句 cursor.execute(
如何在不联网的情况下迁移Python虚拟环境
方法一 1.需要在未联网的服务器上先使用 python3 -m venv venv创建虚拟环境 2.再把下载好的所需包的venv(虚拟环境的名称)——lib文件夹中的python包site-packages拷贝过去 3.在新的虚拟环境中直接使用即可 方法二 1.导出依赖文件,在A电脑中使用以下命令生成依赖文件 2.拷贝虚拟环境 将整个虚拟环境目录(例如venv)和requirements.txt
easyocr 及其 与tesseract的比较
EasyOCR 介绍 EasyOCR 是一个基于深度学习的开源光学字符识别(OCR)工具,由 Jaided AI 开发,能够从图片中提取文字信息。与传统 OCR 工具不同,EasyOCR 使用神经网络进行训练和识别,支持 80 多种语言,并且可以处理复杂的文本布局、手写体和多语言场景等问题。它非常适合从自然场景图像(如路标、商店招牌等)中提取文本。 EasyOCR 的核心特点: 深度学习驱动:E
在不需要WiFi密码的情况下进行断网攻击
本教程只能用于学习研究之用 任何未经他人允许的攻击行为都是违法行为 参考教程 https://www.youtube.com/davidbombal 准备 * 一张可以开启监听模式的网卡 * 两张网卡使用那一张都可以 * 本教程使用的是 python编写的脚本代码 以下是部分代码 * 在代码中作者写了大量的注释 以供使用者参考 具体步骤 将提前准备好的 网卡插入 电脑并切换
Unity ML-Agents: 革新游戏AI开发的开源工具包
ml-agents Unity ML-Agents:革新游戏AI开发的开源工具包 Unity ML-Agents(Machine Learning Agents)是Unity Technologies推出的一个开源项目,旨在将游戏和模拟环境转变为训练智能代理的平台。这个工具包为游戏开发者和AI研究人员提供了一个强大而灵活的框架,使他们能够轻松地在Unity环境中实现和训练智能代理。 ML-Agen
Keras-GAN:使用Keras实现各种生成对抗网络
Keras-GAN:使用Keras实现各种生成对抗网络 生成对抗网络(Generative Adversarial Networks, GAN)是近年来深度学习领域最热门的研究方向之一。自2014年Ian Goodfellow等人提出GAN以来,各种GAN变体层出不穷,在图像生成、风格迁移、超分辨率等多个领域取得了突破性进展。然而,由于GAN的训练较为困难,实现一个稳定工作的GAN模型并非易事。
HyperLPR: 高性能中文车牌识别框架
HyperLPR简介 HyperLPR是一个开源的高性能中文车牌识别框架,由Jack Yu等人开发。它基于深度学习技术,能够快速准确地识别各种类型的中国车牌。HyperLPR具有以下主要特点: 识别速度快:在720p分辨率下,单核Intel 2.2GHz CPU平均识别时间不到100ms。 准确率高:在出入口场景下,准确率可达95%-97%。 支持多种车牌类型:包括单行蓝牌、单行黄牌、新能源车牌、
python——celery异常consumer: Cannot connect to redis://127.0.0.1:6379/1: MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk.
1.检查 Redis 日志: 查看 Redis 的日志文件(通常位于 /var/log/redis/redis-server.log 或者根据你的配置文件中指定的位置),以获取有关错误原因的详细信息。 2.检查磁盘空间: 确保你的服务器有足够的磁盘空间。使用以下命令检查磁盘使用情况: 如果磁盘空间不足,清理一些不必要的文件。 3.检查文件权限: 确保 Redis 能够写入其 RDB 文件所在的目
DeepLearning.ai专项课程总结:深度学习入门指南
DeepLearning.ai-Summary DeepLearning.ai专项课程:深度学习的最佳入门之选 DeepLearning.ai是由斯坦福大学教授Andrew Ng在Coursera平台上推出的一个深度学习专项课程。作为人工智能和机器学习领域的顶级专家,Andrew Ng精心设计了这一系列课程,旨在帮助学习者系统地掌握深度学习的核心知识和技能。本文将对这个广受欢迎的专项课程进行全面介
NanoDet-Plus: 超快速轻量级无锚点目标检测模型
NanoDet-Plus:超快速轻量级无锚点目标检测模型 NanoDet-Plus是一个超快速、高精度的轻量级无锚点目标检测模型,由RangiLyu开发并开源。它在保持高检测精度的同时,具有极小的模型体积和极快的推理速度,可以在移动设备上实现实时目标检测。 主要特点 NanoDet-Plus具有以下突出特点: 超轻量级:模型文件仅980KB(INT8)或1.8MB(FP16) 超快速:在移动ARM
深度学习对对联:探索seq2seq-couplet项目的智能对联生成
引言 对联作为中国传统文化的瑰宝,一直以其对仗工整、意境深远而备受推崇。随着人工智能技术的发展,利用深度学习来生成对联成为了一个引人注目的研究方向。本文将深入探讨seq2seq-couplet项目,这是一个利用序列到序列(seq2seq)模型来实现智能对联生成的开源项目。 seq2seq-couplet项目概述 seq2seq-couplet项目由GitHub用户wb14123开发并开源,旨在利用
Python操作SQLServer数据库增删改查
# coding:utf-8 import pymssql def fn_query(cursor): # 查询 sql = 'SELECT * from Test' cursor.execute(sql) row = cursor.fetchone() while row: print(row) row = cursor
树莓派 RasperryPi 开源免费的PLC通讯神器 LECPython,和欧姆龙Omron PLC通讯示例
简介 LECPython 是一个强大的 Python 组件,基于 C# 开发,能够实现 Python 与 PLC 之间的高效通信。本文将指导您如何在树莓派(Raspberry Pi)上安装和使用 LECPython 组件,为您的工业自动化项目提供便利。 LECPython 旨在解决在树莓派等嵌入式设备上,与可编程逻辑控制器(PLC)建立高效通信的难题。当前,市场上缺乏一个完整的、专为树莓派设计的控
Python 文件发送到对方服务器文件夹内
为了将Python文件发送到服务器的文件夹内,你可以使用paramiko库来实现SSH连接,并进行文件传输。以下是一个简单的例子: 首先,安装paramiko库(如果你还没有安装的话): 然后,使用以下Python代码将文件发送到远程服务器: 确保替换上述代码中的hostname、username、pa