自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 最小公倍数

最小公倍数

2022-11-13 17:09:15 266

原创 c++多态

c++多态

2022-11-01 15:35:47 394

原创 mpi出现的问题

#include <iostream>#include "mpi.h"using namespace std;int main(int argc, char* argv[]) { MPI_Status status; int myid, numprocs; int n = 6; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &myid); MPI_Comm_

2022-05-06 19:00:54 434

原创 pytorch基本语法

1.list、numpy.darray转tensorx = torch.tensor([[1, -1], [-1, 1]])x = torch.from_numpy(np.array([[1, -1], [-1, 1]]))2.生成全为0或全为1的tensorx = torch.zeros([2, 2])x = torch.ones([1, 2, 5])3.tensor的数学运算两个矩阵加法:z = x + y两个矩阵减法:z = x - y矩阵求次方:y = x.pow(2)矩阵

2022-03-10 11:33:45 1556

原创 leetcode 刷题总结

2.28题目:最多可达成的换楼请求1.这里使用了dfs遍历算法,但是,没能引用每次的数组,导致每次都要拷贝数组,增加了时间复杂度。2.__builtin_popcount(n) 计算一个 整数 n 有多少个位为13.fill(delta.begin(), delta.end(), 0); ,将数组dalta全部填充为 04.all_of(delta.begin(), delta.end(), [](int x) { return x == 0; })区间[开始, 结束)中是否所有的元素都满足_P

2022-02-28 10:38:24 110

原创 c++ 读取数量不定的数据

用c++读入数量不定的数据,代码如下:#include <iostream>using namespace std;int main(){ int value; while(cin >> value) // 每读入一个数据就输出 1 cout<<1; return 0;}当我们使用一个 istream 对象作为条件时,其效果是检测流的状态。如果流是有效的,即流未遇到错误,那么检测成功。当遇到文件结束符(e

2022-02-20 09:39:31 1003

原创 c++ 函数改变原始值大小的两种办法

1.传入原始值的地址,通过指针改变原始值的大小#include <iostream>using namespace std;void func(int *a) { *a = 5;}int main(){ int a = 3; func(&a); cout << a;}输出:52.引用的方法,直接改变原始数值#include <iostream>using namespace std;void func(int &a) {

2022-01-14 09:57:09 488

原创 单调递增或非递增子序列的长度

在数列{x1,x2,x3,…,xn}\lbrace x_1,x_2,x_3,\ldots,x_n \rbrace{x1​,x2​,x3​,…,xn​}中,寻找最长单调递增子序列{xi,xj,…,xk}\lbrace x_i,x_j,\ldots,x_k \rbrace{xi​,xj​,…,xk​}的长度,其中1≤i<j<k≤n1 \leq i < j<k\leq n1≤i<j<k≤n同时:xi<xj<…<xkx_i<xj<\ldots<

2021-12-19 19:06:36 211

原创 c++ 排序函数使用模板

sort(nums.begin(), nums.end(),[&](const auto& a, const auto& b){(填写cmp函数)});

2021-12-01 10:51:36 457

原创 20s内爬取百度西游记

import requestsimport reimport timeimport asyncioimport aiohttpimport aiofiles# 对指定的url内容进行读取到文件的操作async def get_content(title ,page_url): async with aiohttp.ClientSession() as session: async with session.get(page_url) as resp:

2021-11-11 16:50:52 263

原创 python 线程池和进程池

python可以自己建立线程池,和进程池,而且可以自己进行调度,大大提高了程序的运行效率。线程池的写法:from concurrent.futures import ThreadPoolExecutor# 需要放到线程里的函数def fn(name): for i in range(100): print(name, i) if __name__== '__main__': # 初始化一个容量为50的线程池 with ThreadPoolExecu

2021-11-10 13:49:57 465

原创 python 多线程写法

进程:资源的管理单位线程:cpu执行单位引入多线程,可以提供程序执行效率写法1(主要写简单的函数):from threading import Threaddef func(): for i in range(1000): print("func", i)if __name__ == '__main__': # 调用多线程 t = Thread(target=func) t.start() for i in range(1000):

2021-11-07 10:05:53 292

原创 异或的运算

运算规则:x ^ x = 0x ^ 0 = x设 y != xx ^ y 得到的是x + y 没有进位的结果涉及得到的leetcode题目:easy:查找数列里缺失的数字

2021-11-06 10:06:32 3821

原创 python 爬取17k网址的个人书架内容

import requestssession = requests.session()data = { 'loginName': 账号, 'password': 密码}# url = 'https://passport.17k.com/ck/user/login'resp = session.post(url, data=data)resp1 = session.get('https://user.17k.com/ck/author/shelf?page=1&appK

2021-11-02 22:46:44 496

原创 python爬取猪八戒网的内容

from lxml import etreeimport requests# 爬取页面def get_page(url): resp = requests.get(url) resp.encoding='utf-8' return resp.text# 从页面中提取所需要的信息def get_info(s): html = etree.HTML(s) divs = html.xpath('/html/body/div[6]/div/div/div[3]/d

2021-11-02 18:31:55 713

原创 leetcode 出租车问题的一些思考

题目链接求解思路:动态规划,并且记录下搭配方案。时间复杂度:O(n)空间复杂度:O(n * m)class Solution {public: long long maxTaxiEarnings(int n, vector<vector<int>>& rides) { sort(rides.begin(), rides.end()); // 计算收入的dp数组 vector<long long> d

2021-10-31 10:08:18 358

原创 c++ vector操作

1.一维vector变量设置。# include <iostream># include <vector>using namespace std;int main(){ vector<long long> nums(10, 12); for(auto& num: nums){ cout<<num<<' '; }}12 12 12 12 12 12 12 12 12 122.二维vector变量设置:# inclu

2021-10-24 22:43:37 395

原创 python re模块

re模块包含对于正则表达式的运用的函数。重点知识:findallfinditersearch(?P正则)group()import retest = "我今年18888岁, 有4个爱好"# # 1.从一个字符串中提取到所有的数字# lst = re.findall('\d+', test)# print(lst)# # 2.判断一句话中是否有数字,搜索数据常用# # search的特点:匹配字符串,匹配到第一个结果就返回,不会匹配多个结果# res = re.searc

2021-10-24 09:26:14 87

原创 正则表达式

正则表达式是对字符串操作的一种逻辑公式,我们一般使用正则表达式对字符串进行匹配和过滤。使用正则的优缺点:优点:灵活,功能性强,逻辑性强缺点:比较难正则表达式由普通字符和元字符组成。1.字符组:字符组用[ ] 在[ ]中出现的内容会被匹配,例如[abc]匹配a或b或c如果字符组的内容过多还可以使用-.例如:[a-z]匹配a到z之间所有的字母。2.简单元字符:. : 匹配除换行符外的一个任意字符\w :匹配字母或数字或下划线\W :匹配非字母或数字或下划线\D :匹配非数字\S :匹配非

2021-10-22 22:00:52 91

原创 python traceback模块

在通过try…except捕获到异常后,用traceback模块记录异常到日志里。import tracebackimport logging# 建立日志logging.basicConfig(filename='d.txt', format='%(asctime)s - %(filename)s - %(levelname)s - %(module)s : %(message)s', datefmt='%Y-%m-%d

2021-10-18 20:47:31 351

原创 python logging模块

logging模块主要用来生成日志,记录报错信息,方便处理import loggingimport logging# filename: 文件名# filemode: 文件访问的格式# format: 数据的格式化输出,最终在日志文件中的样子# 时间-名称-级别-模块:错误信息# 名称如果不给出,默认为root# datefmt: 时间的格式# level: 错误的级别权重,当错误的级别权重大于等于level的时候写入文件loggin

2021-10-18 20:36:12 76

原创 python 对于程序异常的处理

1.try…except…:处理异常try: print(1 / 0)except FileNotFoundError: print("出错了")finally: # 无论程序执行的结果怎么样,都会执行这一步,运用在处理数据库时,及时退出数据库 print("程序执行结束")对于无法预料的错误,还是会出现报错信息。程序执行结束Traceback (most recent call last): File "C:/Users/DELL/PycharmProjects/

2021-10-18 18:59:24 2614

原创 python hashlib模块 md5加密

进行md5加密。import hashlib# 创建md5对象, 正常的默认加密方式容易撞库,解决的方法:加盐obj = hashlib.md5('12121'.encode(('utf-8')))# 把要加密的信息传递给objobj.update("6666".encode('utf-8'))# 从obj中拿到密文mi = obj.hexdigest()print(mi)输入账号,密码,对密码进行md5加密后存储再test.txt。后将账号,加密后的密码存储在test.txt里im

2021-10-17 22:17:39 644

原创 python json模块

1.json是一种数据交互的数据格式2.来自于前端3.json可以和python互相转换4.dumps: python数据结构转为json格式的数据import jsondic = {"id" : 1, "age": 21, "name": "盖伦", "LOGGING":True,'Remark':None}# ensure_ascii=False 确保中文不会被转为ACSII码s = json.dumps(dic, ensure_ascii=False)print(s, type(s))

2021-10-17 21:29:30 63

原创 python pickle模块

序列化:把对象转化成二进制文件,方便传输存储反序列化:把二进制字节转化为对象利用pickle模块里的函数1.dumps: 把对象(数据)转化为字节import picklelst = [1, 2, 3, 4, 5]# 将lst转为二进制t = pickle.dumps(lst)print(t)输出:b'\x80\x03]q\x00(K\x01K\x02K\x03K\x04K\x05e.'2.loads:把字节转为对象(数据)t = b'\x80\x03]q\x00(K\x01K\

2021-10-17 20:38:05 91

原创 python random模块

random模块用于生成随机数。import randomprint(random.random()) #[0, 1]之间的随机小数print(random.uniform(5, 9)) #输出[5, 9]之间的随机小数print(random.randint(5, 9)) #随机输出[5, 9]之间的整数输出:0.086656242837248388.6558291059071159同时,可以随机取出列表,元组里的元素import randomlst = ["上单", "中单",

2021-10-17 20:03:41 98

原创 python 生成n位随机数

# 生成数字def rand_num(): return str(random.randint(0, 9))# 生成大写字母def rand_upper(): return chr(random.randint(65, 90))# 生成小写字母def rand_lower(): return chr(random.randint(97, 122))# 生成n位随机验证码def rand_verify_code(n=4): lst = ["rand_num"

2021-10-17 19:59:17 2038

原创 python datetime模块

now()当前的系统时间计算时间差from datetime import datetime# 输出当前时间print(datetime.now())# 得到一个时间 年月日时分秒t1 = datetime(2018, 1, 2, 12, 12, 14)t2 = datetime(2019, 1, 2, 12, 12, 12)# 求两个时间的差值dif = t2 - t1# 将时间的差值转为秒print(dif.total_seconds())输出:2021-10-17 18:

2021-10-17 19:22:04 94

原创 python time模块

一般使用time模块1.让程序休息n秒,可以在爬虫时,有效地降低访问频率。import timeprint("Let's go")# 让下一个程序暂停3s再执行time.sleep(3)print("oh!")2.简单的时间差计算,计算代码段的执行时间。import timea = time.time() # 当前的系统时间,从 1970年1月1日0点0分0秒开始到现在经过了多少秒for i in range(10000): print(i)b = time.time()

2021-10-17 18:20:47 60

原创 python 汉诺塔问题

汉诺塔问题:相传在古印度圣庙中,有一种被称为汉诺塔(Hanoi)的游戏。该游戏是在一块铜板装置上,有三根杆(编号A、B、C),在A杆自下而上、由大到小按顺序放置64个金盘。游戏的目标:把A杆上的金盘全部移到C杆上,并仍保持原有顺序叠好。操作规则:每次只能移动一个盘子,并且在移动过程中三根杆上都始终保持大盘在下,小盘在上,操作过程中盘子可以置于A、B、C任一杆上。解决办法:1.将 n - 1个铜块从A经过C移动到B2.将最底下的铜块从A移动到C3.将 n - 1个铜块从B经过A移动到Cdef hon

2021-10-17 16:06:45 2077 2

原创 python 递归查看文件夹里的文件

#导入文件操作模块import os# 定义递归访问文件的函数readdef read(path,ceng): # 访问path路径下的文件或文件夹 lst = os.listdir(path) # 打印每一层的文件或文件夹 for name in lst: # 拼接名称,得到绝对路径,判断该文件是否符合是文件夹 real_path = os.path.join(path, name) # 如果是文件

2021-10-17 15:26:35 310

原创 python 利用product找数组里数字的所有可能的集合

import itertoolsnums = [1, 2, 3, 4]# 生成 2^n 个集合for mask in itertools.product([True, False], repeat=len(nums)): sub = [] # 根据得到的集合,把数字填进去 for i in range(len(nums)): if mask[i]: sub.append(nums[i]) print(sub)

2021-10-17 12:49:31 197

原创 python 递归深度

import sysprint(sys.getrecursionlimit())输出:1000由此可得默认的最大递归深度为1000但是,在实际操作时,递归深度到不了1000下面测试:def fun(cnt): print(cnt, end=" ") fun(cnt + 1)fun(1)最后到998就截止了。当然,可以人为更改递归深度。import sysprint(sys.getrecursionlimit())#更改递归深度为2000sys.setrecu

2021-10-15 22:27:03 317 1

原创 python 内置函数filter

filter(筛选函数, 筛选对象)之后要用迭代器不断地取出对象#筛选出lst里能整除3的数,之后,返回迭代器。lst = [1, 323, 43, 6435, 54, 2452, 4352]f = filter(lambda x : x % 3 == 0, lst)print(type(f))it = iter(f)while True: try: print(next(it)) except StopIteration: brea

2021-10-15 22:07:41 231

原创 python 内置函数sort

sort(排序元素,key = 排序规则, reverse = True(从小到大) Fasle(从大到小))lst = [{"id": 1, "name": '盖伦', "age": 18}, {"id": 2, "name": '杰斯', "age": 16}, {"id": 1, "name": '压缩', "age": 19}]# key 是排序的规则制定res = sorted(lst, key=lambda dic: dic["age"], reverse=Tr

2021-10-15 21:56:43 93

原创 python 内置函数

一、作用域相关1.globals:查看全局作用域里的内容a = 10def func(): a = 10print(globals())打印结果:{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x00000205433B9240>, '__spec__':

2021-10-15 20:46:30 119

原创 python 匿名函数

为了解决一些简单的需求而设计的一句话函数。fn = lambda a, b: (a + b, a - b)print(fn(1, 2))打印结果:(3, -1)lambda 表示的是匿名函数,不需要def来声明,一句话就可以声明一个函数语法:函数名 = lambda 参数 : 返回值注意:1.函数的参数可以有多个,多个参数之间用逗号隔开2.匿名参数不管多复杂,只能写一行,且逻辑结束后直接返回数据3.返回值和正常函数一样,可以是任意数据类型匿名函数并不是一定没有名字,这里前面的变

2021-10-15 18:12:08 86

原创 word 格式刷

1、格式刷单击只可使用一次,使用后会自动取消使用状态。2、格式刷双击可多次使用,但使用完后必须单击取消使用状态。

2021-10-14 20:04:50 1019

原创 不用中间变量,交换a和b的值

a = a + b;b = a - b;a = a - b;

2021-10-13 08:59:38 436

原创 python 各种推导式

列表推导式的基本语法:[结果 for循环 if条件]lst = [f"k * {i}" for i in range(1, 11) if i % 2 == 1]print(lst)输出:['k * 1', 'k * 3', 'k * 5', 'k * 7', 'k * 9']字典推导式:{key : value for循环 if}lst = ["a", "b", "c"]di = {lst[i] : i for i in range(len(lst))}print(di)输出:{'

2021-10-09 12:39:44 91

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除