Programming
未读1. Asyncio异步处理基本概念
async :写在函数开头,将指定函数转换为协程。
event_loop :事件循环,将协程注册到事件循环上协程才可以被调用。
coroutine :协程,类似于平常所说的函数,用于实现某些操作,只有被转为任务或者注册到事件循环上后才可以执行,否则返回一个协程对象。
await :写在协程、任务前,用于挂起阻塞的异步调用 。
task :任务,进一步封装好的协程,可以直接被调用。
future : 从功能来讲是跟task差不多,但是它是一个底层的等待对象,表示一个异步操作的最终结果,通常情况下不会在应用层级创建。
2. Asyncio异步处理基础上手2.1 协程和休眠根据第1小节有关协程的介绍,简单写一个协程,使用async关键字定义一个协程函数。再使用await关键字挂起一个阻塞。
import asyncioimport time# 定义一个协程函数,其中使用await关键字进行休眠# asyncio.sleep(seconds)函数表示休眠时间,参数为秒async def startDreamPlace(): print(f&quo ...
Programming
未读GAN先说一下GAN,对抗生成模型核心即生成器Generator和判别器Discriminator,由生成器不停的生成数据,判别器给出反馈,以此往复知道判别器无法判断生成器生成的数据真伪。
这样的过程相当于是从一张白纸做成了一张假钞,“警察”(Discriminator)最后也无法判断出这是真币还是假币。实现了从一种特征到另一种特征的转换。
CycleGAN-VCCycleGAN VC2是一种用于语音转换的模型,基于 CycleGAN和GAN 的原理进行改进和应用。其主要特点和原理包括:
语音转换:CycleGAN VC2 主要用于将一种语音特征转换为另一种语音特征,如改变说话人的声音特征,同时保持内容不变。
无配对数据训练:与图像转换中的 CycleGAN 类似,CycleGAN VC2 不需要成对的语音数据进行训练。它可以在没有直接对应的语音对的情况下学习不同语音域之间的映射。
循环一致性损失:为了确保转换后的语音保留原始语音的内容,CycleGAN VC2 使用循环一致性损失。这意味着,如果将语音从域 A 转换到域 B,然后再转换回域A,最终得到的语音应该与原始语音相似。
...
Programming
未读有时候写爬虫的时候会想要每隔固定的时间执行一次,所以就想到了设计一个定时任务,于是找到了Python的Schedule模块,记录一下关于Schedule模块的一些知识点。
schedule 模块是一个用于在 Python 中实现简单任务调度的库。它允许你以简洁的语法安排任务。
安装首先,安装 schedule 模块:
pip install schedule
基本用法及案例一个整体的示例import scheduleimport timedef job(): print("I'm working...")# 每三秒钟执行一次上面的任务jobschedule.every(3).seconds.do(job)while True: schedule.run_pending() time.sleep(1)
其中schedule.run_pending() 来运行所有准备好的任务。通常将其放在一个循环中,以持续检查和执行任务。
其他的一些定时任务写法schedule 模块使用一种类似自然语言的方式来安排任务。以下是一些常用的方法:
每隔 3 ...
Programming
未读最近捣鼓本地部署一些大模型应用,突然发现本地网页可以通过localhost:port访问,但是却不能通过127.0.0.1:port访问,所以去详细琢磨了一下这两者的区别。
奇怪的是我以前做的一些全栈项目,当初全凭心情来使用localhost或是127.0.0.1来访问也没啥问题,所以也不清楚问题的具体原因。
LocalHostlocalhost是一个主机名称,它是本地服务器名称,在访问localhost时,它指向本地电脑主机的网络地址,系统会自动把它解析成IP地址,通常即为本地回环地址127.0.0.1。但是,它可以被配置为任何IP地址,包括IPv4和IPv6。
127.0.0.1127.0.0.1是一个IPv4地址,它是一个特殊的IP地址,用于指向本地主机。在计算机网络中,127.0.0.1被称为回环地址(Loopback Address),它是一个特殊的IP地址,用于测试网络连接和本地服务。
区别localhost
是一个主机名。
通常解析为127.0.0.1,但解析依赖于系统的hosts文件配置。
127.0.0.1
是一个具体的 IPv4 地址。
直接指向本地环回 ...
Programming
未读跟课题组的一个学长合作的一篇论文, 最近发表了, 总结一下在代码设计中学到的算法。
首先,所谓优化算法,是指对算法的有关性能进行优化,如时间复杂度、 空间复杂度 、正确性、 健壮性 。由于算法应用情景变化很大,算法优化可以使算法具有更好泛化能力。 算法优化是指对算法的有关性能进行优化,如时间复杂度、 空间复杂度 、正确性、健壮性。 大数据时代到来,算法要处理数据的数量级也越来越大以及处理问题的场景千变万化。 为了增强算法的处理问题的能力,对算法进行优化是必不可少的。对一些流程比如加工行业、旅游行业等,进行优化,其中最为典型的问题就是旅行商问题(TSP)。总而言之,优化算法的总目的就是将整个过程的成本(比如金钱、时间、各种消耗等)最低,典型的优化算法包括: 遗传算法(GA)、禁忌算法(TS)、模拟退火算法(SA)、粒子群算法(PSO)、差分算法(DE)、生物地理算法(BBO)等,下面我会对这些算法都或多或少做一些代码方面的讲解,每篇讲解后面我都会附上代码。
1. 遗传算法(GA)遗传算法可以说是最基本的优化算法,它是根据人类生殖过程中染色体的变化而产生的,原理是对于父代数据进行编译,在通 ...
School
未读本机配置:AMD核显 + NVIDIA独显成功安装了optimus-manager管理显卡驱动,它可以很好接触显卡驱动的切换.于是昨晚因为屏幕刷新率问题尝试切换startup mode.
于是尝试切换启动项显卡驱动模式:
尝试nvidia独显直连启动:成功启动.使用感受上感觉到性能下降,图形动画效果变差.
尝试nvidia+amd混合启动:成功启动.使用感受极佳,推荐.
尝试amd核显启动:启动失败.无法进入kde.黑屏(显卡未通电的那种黑屏).可以进入tty.
于是尝试在tty中解决:
尝试卸载了optimus管理器,reboot,无效.
尝试optimus-manager - -switch nvidia,报错,无有效解决方法.
尝试进入bios,禁用核显启动,无法进入tty,风扇狂转,黑屏.
Your browser does not support the video tag.
至此,Arch宣告滚挂…….GG!
os驱动问题由于机器各有所不同很难解决,考虑到短学期需要使用电脑,所以打算重装.这次会尝试在grub里安装iso,这样就无需插u盘抢救系统.并且尝试 ...
School
未读不妨说windows已然成为历史的车轮印.
经过前三次的捣鼓,昨晚毅然卸载windows.
这样就不会arch装不好就继续用windows了.😭
晚上好,尊敬的Arch Linux用户!
Your browser does not support the video tag.
School
未读有一些方便数据库操作的SQL语句,它可以简化一些代码。总是或多或少忘记,记录一下。
我这里拿一个students表举例,表结构如下:
id
class_id
name
gender
score
1
1
张三
男
90
2
1
李四
男
85
3
2
王五
女
95
4
2
赵六
女
88
插入或替换如果我们希望插入一条新记录INSERT,但如果记录已经存在,就先删除原记录,再插入新记录。此时,可以使用REPLACE语句,这样就不必先查询,再决定是否先删除再插入。
REPLACE INTO students (id, class_id, name, gender, score) VALUES (1, 1, '小明', 'F', 99);
若id=1的记录不存在,REPLACE语句将插入新记录,否则,当前id=1的记录将被删除,然后再插入新记录。
插入或更新如果我们希望插入一条新记录INSERT,但如果记录已经存在,就啥事也不干直接忽略,此时,可以使用INSERT IGNORE INTO ...语句。
INSERT ...
Programming
未读使用selenium等工具类,在亚马逊平台上爬去商品信息和用户信息,并进行数据分析和分词统计,最后生成用户画像报告。
亚马逊平台访问需要代理访问!
github仓库: Github仓库地址
star和fork是一个好习惯!:)
点赞和关注也是好习惯!:D
1. 准备工作写在前面:代码本身很多函数是写在类当中的,如果单个函数无法使用,请滑到文章最后面查看完整代码!
需要的导入:
import reimport osimport timeimport mathimport pandas as pdfrom tqdm import tqdmfrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_condi ...
School
未读冰墩墩是2022年北京冬奥会的吉祥物,确实好玩!
废话不多说,直接开画!
import timeimport turtlescreen = turtle.Screen()turtle.title('Python(冰墩墩)') # 可以自己修改名称turtle.speed(10) # 可以自己调节速度# 左手turtle.penup()turtle.goto(177, 112)turtle.pencolor("lightgray")turtle.pensize(3)turtle.fillcolor("white")turtle.begin_fill()turtle.pendown()turtle.setheading(80)turtle.circle(-45, 200)turtle.circle(-300, 23)turtle.end_fill()# 左手内turtle.penup()turtle.goto(182, 95)turtle.pencolor("black")turtle.pensize(1) ...