<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[h960822的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/h960822</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; h960822]]></copyright><item><title><![CDATA[Redis的使用]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/140023950</link><guid>https://blog.youkuaiyun.com/h960822/article/details/140023950</guid><author>h960822</author><pubDate>Sun, 30 Jun 2024 19:48:12 +0800</pubDate><description><![CDATA[lrem class_1  1  ws  移除元素 如果数字是0表示和ws相同的都删除 大于0表示从头开始删除这个写的几个ws值 如果是小于就从未开始删除。redis-cli 或 redis-cli.exe -h 127.0.0.1 -p 6379。lrange class_1 0 0 第一个参数为起始的索引 第二个参数为结束的索引。zrange order_1 0 -1 获取所有的值。lrange class_1 0 -1  获取所有的值。hgetall person 获取所有的值和key。]]></description><category></category></item><item><title><![CDATA[类的装饰器]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139998784</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139998784</guid><author>h960822</author><pubDate>Wed, 26 Jun 2024 21:58:33 +0800</pubDate><description><![CDATA[yield i # 函数中有yieid 代表生成了生成器。result = re.match(正则表达式，要匹配的字符串)with 语句 结合上下文 管理器对象使用。print('进入上文方法')print('进入下午方法')4  使用contextmanager装饰器。print('开始生成数据')print('触发了吗')print('执行完了')深拷贝 ：deepcopy。8 正则表达式 re模块。cory为浅拷贝函数。1 使用类定义装饰器。]]></description><category></category></item><item><title><![CDATA[logging日志级别介绍]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139997893</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139997893</guid><author>h960822</author><pubDate>Wed, 26 Jun 2024 20:55:53 +0800</pubDate><description><![CDATA[3 设置logging的配置信息  创建出一个log.txt文件 用来记录日志。logging.debug('这是一个dug日志的信息')logging.debug('这是一个dug日志的信息')1 日志的等级可以分为5个  从底到高分别是。critical 特别验证 程序不能运行。debug  程序调式bug使用。warning  发出警告。info  程序正常运行。error  程序出错。]]></description><category></category></item><item><title><![CDATA[python之闭包以及服务器的开发]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139968861</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139968861</guid><author>h960822</author><pubDate>Wed, 26 Jun 2024 20:30:45 +0800</pubDate><description><![CDATA[建立链接后 获取的客户端的内容 new_socket为二进制   ip_prot=127.0.0.1 还有链接的号码。fn() # 当函数被调用的时候 会执行 类中的__call__的这个方法 同时fn本身的这个函数也会被调用。print(e) # 13  先执行@c的这个装饰器将最后的结果 再给到@a的执行器再去执行。# 上面的代码修改为下面的  key：index.htmll  fun：index()# 上面的代码修改为下面的  key：index.htmll  fun：index()]]></description><category></category></item><item><title><![CDATA[python之mysql数据库的操作]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139899216</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139899216</guid><author>h960822</author><pubDate>Sun, 23 Jun 2024 21:32:25 +0800</pubDate><description><![CDATA[create table 表名（id int unsigned primary key auto_increment not null, name varchar(20) not null, age tinyint unsigned default 0, height decimal(5,2), gender enum('男'，‘女’，‘保密’)）查询id为1，3，5的数据。count（col） 查询列的条数，  sum（col）查询列的数据相加的和， max（col）该列的最大值。]]></description><category></category></item><item><title><![CDATA[创建web服务器]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139879554</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139879554</guid><author>h960822</author><pubDate>Sat, 22 Jun 2024 14:37:25 +0800</pubDate><description><![CDATA[request_list = recv_content.split(' ', maxsplit=2)  # 根据空格截取 只截取最前面的两个。request_list = recv_content.split(' ',maxsplit=2) # 根据空格截取 只截取最前面的两个。request_list = recv_content.split(' ', maxsplit=2)  # 根据空格截取 只截取最前面的两个。# 对二进制消息进行解码  接收的是客户端 请求报文的消息。]]></description><category></category></item><item><title><![CDATA[python中websock的使用]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139877919</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139877919</guid><author>h960822</author><pubDate>Sat, 22 Jun 2024 10:08:22 +0800</pubDate><description><![CDATA[socket.AF_INET : IP4地址 AF_INET6为ip6地址    SOCK_STREAM：tcp链接。# 第一个参数表示ip地址 一般不用指示，表示本机的任意一个IP地址    第二个参数表示端口号。print('接受服务端的数据'+recv_content)send_conetnt = '你好我客户端'# 对二进制编码为utf-8。# 等待客户端的链接请求。# 等待最大的链接个数。# 接收客户端的数据。]]></description><category></category></item><item><title><![CDATA[多任务的结束]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139811905</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139811905</guid><author>h960822</author><pubDate>Wed, 19 Jun 2024 21:40:31 +0800</pubDate><description><![CDATA[这里的代码执行的顺序就是  1111  222  1111 11111 ...， 进程的执行是无序的，具体哪个函数先执行要看操作系统先运行哪一个。并行：对于多核cpu处理多任务，操作系统给每一个cpu安排一个执行的软件，多个内核是真正的一起执行的软件。os.kill(os.getpid(),9)  #根据当前进程的id编号 杀死自己的进程。m1.join()  # 让上一个进程先执行 这个进程执行完之后再执行下一个进程。线程是用来执行代码的。19 让当前的线程先执行完再执行下一个线程 f.join()]]></description><category></category></item><item><title><![CDATA[python之面向对象编程]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139753925</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139753925</guid><author>h960822</author><pubDate>Mon, 17 Jun 2024 22:38:42 +0800</pubDate><description><![CDATA[print(f'地瓜烤了{self.time1}分钟，目前的状态是{self.status},添加的材料有{self.list}')第一种方式 在子类中调用需要先调用父类的 __init__(self) 的方法  再调用父类的属性或者方法。13 类方法的使用场景。01 第一步 创建类， self指向调用该函数的对象 也就是通过类实例出来的对象。08  类的属性和方法的覆盖 ， 如果同时继承多个父类，有重名的打印的是第一个父类。17 在文件中定义导出的方法 使用 __all__ = ['导出的方法']]]></description><category></category></item><item><title><![CDATA[python基础]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/139608354</link><guid>https://blog.youkuaiyun.com/h960822/article/details/139608354</guid><author>h960822</author><pubDate>Sun, 16 Jun 2024 12:28:55 +0800</pubDate><description><![CDATA['aaa', 'demo.py', 'echarts.py', 'my_package', test[备份].txt', 'webSocket.py', '__pycache__', '基础柱状图.html']多个for循环：list3 = [(i,j) for i in range(3 for j in range(6))]  [(1,0),(1,1),(1,2)...]带if推导式：list2=[i for i in range(10) i % 2 == 0]  符合i%2=0 的返回。]]></description><category></category></item><item><title><![CDATA[uni-app项目中常遇到的问题]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138475611</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138475611</guid><author>h960822</author><pubDate>Tue, 11 Jun 2024 20:42:37 +0800</pubDate><description><![CDATA[解决办法：  我们可以给自定义的导航栏设置一个pading-top的距离为var（--status-bar-height）]]></description><category></category></item><item><title><![CDATA[支付宝支付流程]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138444037</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138444037</guid><author>h960822</author><pubDate>Sat, 04 May 2024 16:28:20 +0800</pubDate><description><![CDATA[04 在跳转之后的页面中也就是http://localhost:4000/payment的界面中获取url参数，请求接口查询支付的状态。第一步前端：点击去结算，前端将商品的信息传递给后端，后端返回一个商品的订单号给到前端，前端将商品的订单号进行存储。06 从跳转路由界面的url地址上面获取支付宝携带的参数订单号等，进行接口请求查询是否支付成功。01 修改订单的状态，以及将准备结算的商品，从购物车的数据表删除。01 前端将订单号发送给后端，后端修改订单号的状态，对应的前端代码：然后再跳转到支付页面。]]></description><category></category></item><item><title><![CDATA[项目使用git开发流程]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138366622</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138366622</guid><author>h960822</author><pubDate>Wed, 01 May 2024 10:41:52 +0800</pubDate><description><![CDATA[在项目中打开git，切换到develop分支下，然后 git add .  git commit -m '初始化', git push;04 因为feature/home分支下没有代码，所以需要将develop分支的代码合并到feature/home分支下。查看所有远程的分支， 然后将远程仓库的feature/home的分支拉取到自己的仓库下。git branch，发现。自己在develop的分支下。06 创建项目是要在从仓库中下载下来的文件夹中创建，将项目提交到远程仓库的develop的分支；]]></description><category></category></item><item><title><![CDATA[TS的使用]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138265944</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138265944</guid><author>h960822</author><pubDate>Sun, 28 Apr 2024 20:51:06 +0800</pubDate><description><![CDATA[let fn：()=> void = ()=>{}   // ()=>void   这是函数的一个类型 没有形参没有返回值never类型：在项目中基本上用不到 在封装框架的时候可能会用上throw new TypeError('抛出了一个错误')while(true){ // 死循环fn()fn（A）return p1。]]></description><category></category></item><item><title><![CDATA[javascript进阶]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138251538</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138251538</guid><author>h960822</author><pubDate>Sat, 27 Apr 2024 20:30:49 +0800</pubDate><description><![CDATA[AO:代表的是函数被调用的时候产生的私有上下文中的变量和函数体内部的函数声明(形参+实参+局部变量+内部函数)02-1-1:如果函数声明的变量名和function的函数名同名的情况下，无论是函数在var的前面还是函数在var的后面,结果都是函数整体会覆盖var声明的变量。08-1 在构造器中 如果返回的是基本数据类型相当于什么都没有返回，如果返回的是引入数据类型那么new出来的实例对象就是返回的引用数据了。每一个基本数据类型的__proto__属性的constructor的属性指向了该属性实例的本身。]]></description><category></category></item><item><title><![CDATA[http缓存协议]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138032049</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138032049</guid><author>h960822</author><pubDate>Sun, 21 Apr 2024 14:08:11 +0800</pubDate><description><![CDATA[memory cache(内存缓存)内存缓存存储在浏览器内存当中，一般刷新网页的时候会发现很多内存缓存。disk cache(硬盘缓存)硬盘缓存是存储在计算机硬盘中，空间大，但是读取效率比内存缓存慢。强缓存之后不需要再向服务器发送请求。而是从浏览器读取分为（内存缓存）（硬盘缓存），缓存时间到期后就会向服务器重新发送请求。强缓存介绍：  状态码为200。协商缓存的状态码为304。]]></description><category></category></item><item><title><![CDATA[文件流下载]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138031588</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138031588</guid><author>h960822</author><pubDate>Sun, 21 Apr 2024 13:42:45 +0800</pubDate><description><![CDATA[第二步 node的index.js文件的代码。]]></description><category></category></item><item><title><![CDATA[nodejs大文件上传]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138028527</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138028527</guid><author>h960822</author><pubDate>Sun, 21 Apr 2024 12:14:17 +0800</pubDate><description><![CDATA[1.express 帮我们启动服务，并且提供接口。2.multer 读取文件，存储。3.cors 解决跨域。]]></description><category></category></item><item><title><![CDATA[websocket聊天的功能]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138027488</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138027488</guid><author>h960822</author><pubDate>Sun, 21 Apr 2024 11:14:32 +0800</pubDate><description><![CDATA[后端思路的分析：需要定义一个数据格式： 里面有几个房间 每个房间有几个人。node需要安装： npm i socket.io。第二步 前端cdn引入socket。第三步 编写服务端的代码。第四步 前端链接成功的代码。第五步 前端发送消息。]]></description><category></category></item><item><title><![CDATA[net模块]]></title><link>https://blog.youkuaiyun.com/h960822/article/details/138026851</link><guid>https://blog.youkuaiyun.com/h960822/article/details/138026851</guid><author>h960822</author><pubDate>Sun, 21 Apr 2024 10:27:39 +0800</pubDate><description><![CDATA[2 建立http的链接让浏览器进行访问。]]></description><category></category></item></channel></rss>