
笔记
子嘉113
这个作者很懒,什么都没留下…
展开
-
c语言中函数用指针调换变量值(及错误方法)的解释及图解
c 声明的变量c是指向int类型变量的指针,赋值c=&a的含义是把变量a的地址存放在指针a中。*c的含义是“指针c指向的变量”不仅是指“c指向的变量所拥有的值”注意:其中 *d 在赋值语句右边时代表把 *d代表的值赋给左边变量,1.1 其中的int。原创 2022-10-24 22:36:42 · 1255 阅读 · 1 评论 -
python基础小知识点汇总2
python中常见易错知识点讲解汇总原创 2022-10-11 20:48:38 · 144 阅读 · 0 评论 -
0-1背包的python实现方法(一维列表和二维列表)(数据结构与算法9)
变量介绍 c为背包的容量,w为物体的重量,v为物体的价值,n为物体的个数。则二维列表的实现代码如下。一维列表的实现方式是。原创 2022-10-04 20:14:07 · 324 阅读 · 0 评论 -
App爬虫相关知识点汇总
1.抓包工具无法解析SSL数据的原因:手机(模拟器)没有安装xposed框架和just-trust-me组件。原创 2022-09-27 22:56:59 · 964 阅读 · 0 评论 -
python基础小知识点汇总1
list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。key – 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。reverse – 排序规则,reverse = True 降序 , reverse = False 升序(默认)。sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。...原创 2022-08-31 17:14:19 · 129 阅读 · 0 评论 -
数据(包括图片)写入Excel的实现总结
2.1 要用到 requests,PIL,os,xlsxwriter,可在终端用pip命令安装这些包.1.1再终端安装xlwt pip install xlwt。2 利用xlsxwriter写入数据及图片到excel文件。1.用xlwt创建并把数据写入Excel文件。2.3如遇到如下bug。原创 2022-08-03 21:32:41 · 322 阅读 · 0 评论 -
javascript中《函数的实现方式》和《构造函数方式实现对象》的区别
1.函数的实现方式实例构造函数方式实现对象的实例两者的实现方式类似,但有区别两者的区别在于:1.函数内部的量叫变量,函数方式实现的对象内部的量叫属性2.函数实现之后,可以直接用函数名调用函数,及用函数名调用函数的变量,而构造函数方式实现对象之后,要调用对象的相关属性,需要先对实现的对象进行实例化,然后才能调用对象的属性。3.函数内部只能声明变量,函数方式实现的对象内部可以声明私有属性,实例属性,类属性。...原创 2022-06-17 23:11:30 · 103 阅读 · 0 评论 -
数据进制转换的相关函数
进制转换相关函数原创 2022-06-02 20:32:44 · 220 阅读 · 0 评论 -
做爬虫的总结
爬虫的部分心得原创 2022-05-31 22:43:15 · 232 阅读 · 0 评论 -
读取csv(excel类相关文件)常见bug,及解决办法统计
bug1:UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xb1 in position 5: illegal multibyte sequence解决办法1:上面报错的意思就是,默认以gbk的方式读取数据,但是文本数据是utf-8类型的,这是需要用到另一个参数encoding,也就是把它编码成与文本一样类型的格式,下面的代码encoding="utf-8"就是要修改的地方,如果不写编码格式,默认是encoding="gbk"的#open(“.原创 2022-05-29 19:19:35 · 2789 阅读 · 0 评论 -
异常(exception)相关知识点
1.异常的相关知识点代码示例:# 可能会发生异常的程序块try: block_try# 第一种except形式except Exception1: block_when_exception1_happen# 第二种except形式except (Exception2,Exception3,Exception4): block_when_exception2_or_3_or_4__happen# 第三中except形式except Exception5 varian原创 2022-04-25 20:12:50 · 289 阅读 · 0 评论 -
selenium模式下切换窗口,抓取数据的实现
selenium下切换窗口的方法如下for handle in driver.window_handles:driver.switch_to_window(handle)具体应用可以测试如下实例(代码如下):from selenium import webdriverimport timeimport randomimport csv# 1.绕过滑块验证inquire_company=input('请输入要查询的公司名称:')option=webdriver.ChromeOpti原创 2022-04-21 22:24:49 · 1011 阅读 · 0 评论 -
绕过滑块验证码登陆网站的实现
因为有些网站登陆的时候需要经过滑块验证码,这里实现了,一个绕过滑块验证码的实例from selenium import webdriverimport timeimport random# 1.绕过滑块验证option=webdriver.ChromeOptions()option.add_experimental_option('excludeSwitches', ['enable-automation'])option.add_argument('--disable-blink-fea原创 2022-04-15 22:11:35 · 2443 阅读 · 5 评论 -
两个算法(数据结构与算法8)
算法1应用场景:假设你有一个数组prices,长度为n,其中prices[i]是股票在第i天的价格,请根据这个价格数组,返回买卖股票能获得的最大收益1.你可以买入一次股票和卖出一次股票,并非每天都可以买入或卖出一次,总共只能买入和卖出一次,且买入必须在卖出的前面的某一天2.如果不能获取到任何利润,请返回03.假设买入卖出均无手续费示例输入:[8,9,2,5,4,7,1]返回值:5说明:在第3天(股票价格 = 2)的时候买入,在第6天(股票价格 = 7)的时候卖出,最大利润 = 7-2原创 2022-04-11 21:32:32 · 231 阅读 · 0 评论 -
python处理PDF文件几个相关知识点
在dos界面下pip install pdfplumber成功,但是在IDE里面却还是显示没有安装解决办法看IDE的setting里面的环境是否错误,可能有不同的环境2. file = os.path.expanduser("~/tmp/每日开放式基金净值表.pdf")等价于 file=os.path.abspath("C://User//justin//tmp//每日开放式基金净值表.pdf")3.安装pymupdf之前不可安装fitz,不然会报错。安装pymupdf之后再安装...原创 2022-04-08 23:39:47 · 654 阅读 · 0 评论 -
几个Bug及用Pycharm启动django框架的方法[美多商城-1]
几个Bug及解决办法如下bug1:ModuleNotFoundError: No module named ‘django_redis’解决办法:pip install django-redisbug2ModuleNotFoundError: No module named ‘PIL’解决办法:pip install Pillowbug3:ModuleNotFoundError: No module named ‘celery’解决办法:pip install celery利原创 2022-04-04 20:41:45 · 671 阅读 · 0 评论 -
字符串的find()和rfind()用法更正
find()方法的作用是:返回目标字符串中匹配的第一个查找字符串的索引。rfind()的作用是:返回目标字符串中匹配的最后一个查找字符串的索引。实例如下:测试代码str="who is your dad and who is your mom"str2="is"# rfind()返回的是匹配的字符串最后一次出现的下标index=str.rfind(str2)# find()返回的是匹配的字符串第一次出现的位置index2=str.find(str2)print(index)prin原创 2022-03-26 21:29:06 · 2020 阅读 · 0 评论 -
简单分布式爬虫的实现(单机)
实现之前要先了解分布式爬虫的结构:了解完之后我们可以分为两部分编写代码:1.控制节点部分2.爬虫节点部分可以根据这两部分,创建代码架构如下代码如下一.控制节点部分1.控制调度器# coding:utf-8from multiprocessing.managers import BaseManagerfrom multiprocessing import Process,Queueimport timefrom 爬虫代码.分布式爬虫.控制节点.Url管理器 import Url原创 2022-03-25 20:33:23 · 799 阅读 · 0 评论 -
分析算法耗时原因
做牛客网的测试一个题目:以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。数据范围:s.length,t.length \le 100000s.length,t.length≤100000,字符串仅由’0’~‘9’构成要求:时间复杂度 O(n)O(n)于是自己写了一段代码,并加入时间显示代码,如下import timedef solve( s, t): # write code here mlen = max(len(s), len(t)) nu原创 2022-03-21 23:51:05 · 267 阅读 · 0 评论 -
图的实现,图与顶点的实现(数据结构与算法6)
图的实现主要分两部:顶点的实现(Vertex类)图的实现(Graph类)顶点的实现(Vertex类的实现)如下:# 顶点实现:Vertex类的实现class Vertex: def __init__(self,key): self.id=key self.connectedTo={} def addNeighbor(self,nbr,weight=0): self.connectedTo[nbr]=weight def __s原创 2022-03-13 21:30:41 · 173 阅读 · 0 评论 -
解决词梯问题之宽度优先级算法及图解(BFS)--(数据结构与算法7)
词梯问题是这样的:考虑一个任务:将单词FOOL转换成SAGE,在解决词梯问题时,必须每次只替换一个字母,并且每一步的结果都必须时一个单词,而不能是不存在的单词原创 2022-03-13 21:15:44 · 1185 阅读 · 0 评论 -
二叉树的应用(解析树,及树的的前序,中序,后序遍历)数据结构与算法5
1.解析树1.1解析树构建器我们的目标是构建一个如上图所示的二叉树实现的方法如下from 数据结构与算法.栈.Queue import Stackfrom 数据结构与算法.树.二叉树.二叉树 import BinaryTreedef buildParesTree(fpexp): fplist=fpexp.split() pStack=Stack() eTree=BinaryTree('') pStack.push(eTree) currentTree=原创 2022-03-06 21:06:49 · 596 阅读 · 0 评论 -
二叉搜索树的性质及Python实现(数据结构与算法4)
1.二叉搜索树(BST)性质:小于父节点的键都在左子树中,大于父节点的键都在右子树中。我们采用“节点与引用”表示法实现二叉搜索树,由于必须创建并处理一颗空的二叉搜索树,所以我们将使用两个类,一个为BinarySearchTree,另一个为TreeNode,具体实现代码如下。class BinarySearchTree: def __init__(self): self.root=None self.size=0 def length(se原创 2022-03-02 22:37:38 · 576 阅读 · 0 评论 -
树的基本概念,及Python实现(数据结构与算法3)
一.树的基本构成的概念1.节点节点是树的基础部分,它可以有自己的名字,我们常称作‘键’,节点也可以带有附加信息,我们称作‘有效载荷’。有效载荷对于很多树的算法不是重点,但是对于很多树的应用很重要。2.边边是树的另一个基础部分。两个节点通过一条边相连,表示它们之间存在联系,除了根节点意外,其它每个节点都仅有一条入边,出边则有可能有多条。3.根节点根节点是树中唯一没有入边的节点。4.路径路径是由边连接的有序节点的列表。5.子节点一个节点通过出边与子节点相连。6.父节点一个节点是其所有子节原创 2022-02-28 22:42:09 · 461 阅读 · 0 评论 -
递归问题的两个实例(数据结构与算法2)
1.分形树利用python自带的turtle()及递归思想绘制一个分型树代码如下:from turtle import *def tree(brenchLen ,t): if brenchLen>5: t.forward(brenchLen) t.right(20) tree(brenchLen-15,t) t.left(40) tree(brenchLen-10,t) t.right(20原创 2022-02-24 23:19:24 · 532 阅读 · 0 评论 -
迭代器,生成器,闭包,装饰器简介
1.迭代器(iterator)1.1迭代器定义:了解迭代器定义之前需先了解可迭代对象(iterable object)。可迭代对象:可以用for循环调用,并不断返回下一个值的对象迭代器就是一种可迭代对象,其定义为,可以被next()方法调用的并不断返回下一个值的可迭代对象,另外迭代器还需实现两个固定的方法 iter_和_next2.生成器(generator)定义:Python中使用了yield的函数被称为生成器。与普通函数不同的是生成器返回的是一个迭代器。或者可以理解为,生成器就是一个迭代器。原创 2022-02-22 21:09:45 · 179 阅读 · 0 评论 -
三种基本数据结构,栈,队列,链表的定义及python实现(数据结构与算法1)
1.栈定义:栈是元素的有序集合,添加操作和移除操作都发生在其顶端。其操作顺序为LIFO(last in first out)根据其定义和特性可用如下Python代码实现栈。class Stack(): def __init__(self): self.items=[] def isEmpty(self): return self.items==[] def push(self,item): self.items.append(原创 2022-02-13 21:00:04 · 678 阅读 · 0 评论 -
windows下爬虫+数据库(非关系数据库/关系数据库)的实现简介2-MYSQL
二.mysql篇1.准备:1.1.下载mysql(注意根据自己的电脑软件位数选则,我的是32位的)1.2根据自己的情况设置自己的mysql密码1.3测试自己的mysql是否安装成功,在命令提示行输入命令mysql -u root -p然后输入上一步设置的密码,如果成功结果如下图1.4.了解基本的SQL语法,可以对数据库进行简单的操作。2.python操作mysql连接mysql可以用的模块有mysqldb和pymysql,由于电脑限制此处选择pymysql,对mysqldb感兴趣的可原创 2022-02-08 16:52:25 · 922 阅读 · 0 评论 -
windows下爬虫+数据库(非关系数据库/关系数据库)的实现简介1-redis
本篇涉及到爬虫用的是Python+selenium,关于python+selenium实现对数据的抓取,主要知识点已在上一篇介绍,有问题的可以看上一篇,本节将结合上一节知识点,主要讲解爬虫爬取数据后与数据库(redis/mysql)结合的具体操作。一.redis篇1 准备1.1.在redis网址下载(下载地址[https://redis.io/download]1.2.解压下载的redis文件1.3.双击redis-server.exe,即启动redis数据库如下图2.python操作redi原创 2022-02-07 22:42:47 · 1279 阅读 · 0 评论 -
爬取带验证码网站思路的小结
由于现在网站技术的发展及爬虫技术的推进,现在网站很多都有访问时需要填写验证码的问题,经过查询,现对验证码问题进行总结,如下:1.IP代理 当我们频繁用一个IP登陆某个网站时,会出现需要填写验证码的问题,解决此种问题可以用IP代理的思路具体有三种方法:(1)借用VPN,更换不同的线路,进而更换IP。(2)IP代理池,借用一些厂商提供的IP代理池的API,更换IP(3)ADSL,利用拨号上网每次分配不同IP的机制,实现更换IP2 cookie登陆,为了避免每次登陆都要输入账号密码,验证码的麻烦,我们可原创 2022-02-08 21:44:51 · 1804 阅读 · 0 评论 -
pycharm的两个使用小技巧
1.当要批量调整相同格式的数据时,可以使用ctrl+R,调出如下界面然后选中其中的Regex,在第一行搜索栏中输入要匹配的正则表达式,然后在第二行搜索栏中输入匹配的文本要被替换的格式,然后选中Replace All,即可批量匹配格式替换替换前替换后2.代码批量缩进,选中要缩进的代码,然后按键盘上的Tab键即可...原创 2022-01-23 23:29:20 · 447 阅读 · 0 评论 -
如何解决redis无法与python交互的问题
初学redis,按照书上的指示,安装好redis后直接启动redis.server 和redis.cli,然后打开pycharm实现python与redis的交互输入代码`import redis出现错误ModuleNotFoundError: No module named ‘redis’检查再三redis也并未安装错误,于是在csdn上请问高人需要下载redis-py于是下载redis-py(下载地址然后安装时出现问题‘python’ 不是内部或外部命令,也不是可运行的程序 或批原创 2022-01-21 20:59:14 · 1193 阅读 · 0 评论 -
学技术之无奈
自学编程技术一年有余,遇两大难题1.分布式爬虫因分布式,故需多太机器,但因条件原因只能用到一台笔记本,虽想法以docker模拟多台样机,但又因docker只支持64位机,我的机子只能用32位系统,到此分布式彻底成了我的一大难题。2.mongodb客户端及图形化管理软件此问题依然由32位系统而起,mongodb虽有低版本支持32位系统,奈何管理软件Robo 3T只有64位,多方求助,常识依旧无果,值此又一问题诞生。遇此两难题,多方尝试,思考,求助,依旧无果,深感无奈。无奈之际,静读二十四史之《欧阳原创 2022-01-20 16:28:09 · 1153 阅读 · 0 评论 -
如何在chrome浏览器中抓取POST数据包
1.首先打开chrome浏览器,然后按F12,选择network菜单,如下图ch然后选中其中的filter,在其中输入method:POST,然后登陆网站就可以抓到POST的数据包,如下图原创 2022-01-06 12:31:27 · 6709 阅读 · 4 评论 -
python3中urljoin无法使用的解决办法?
在python3中urljoin的倒包路径是from urllib.parse import urljoin使用方法是new_full_url=urljoin(page_url,new_url)原创 2021-12-22 21:54:24 · 842 阅读 · 0 评论 -
安卓模拟器(手机)安装抓包工具(fiddler)证书及手机设置代理后无法上网?
我的手机设置代理后,无法上网然后,试了别人的手机也不可以,也不可以,按照网上说的设置了regedit,还有fiddler的脚本也不可以,最后我更改了防火墙里面运行通过应用的网络类型,把原来的只有公用,改为公用和专用都可以,于是,手机可以上网了。.........原创 2021-12-18 20:41:30 · 4162 阅读 · 2 评论 -
2021-04-20
学python,把一些基础的学完之后感觉没有方向了。原创 2021-04-20 18:59:15 · 65 阅读 · 0 评论 -
2021-03-31
大学毕业八年后对大学的总结可能是因为毕业那会儿室友给自己的一个评价其实你很优秀所以总觉得自己其实挺不错的,但过了这么多年历经各种事对自己有了一个清醒的认识。大学的时候想法太多总觉得自己大学的目的就是过好生活,利用大学的名义让爸妈挣到足够的钱,在农村盖上一座楼房,让他们不再感受下雨时候漏雨的生活,然后大学毕业后挣到学费的钱还给他们,然后自己一个人生活。所以大学的时候就做各种事情,听别人的去追女朋友,做兼职发传单,去旅游,去学各种感兴趣的课程知识,想过去写一本书,想过去拿国家奖学金,想过去学好计算机,想原创 2021-03-31 21:21:50 · 83 阅读 · 0 评论