- 博客(67)
- 收藏
- 关注
原创 常见的排序算法
冒泡排序def bubblesort(alist): """冒泡排序""" for i in range(len(alist)-1): stop = True # 就是挨个进行比较,大的或小的就后面放,一次确定一个最大值或者最小值 for j in range(len(alist)-1-i): if alist[j] > alist[j+1]: alist[j],alist[j+1
2021-04-09 14:00:48 180
原创 Python实现栈 队列 双端队列
栈特点:后进先出(LIFO, Last In First Out)栈的操作push(item) 添加一个新的元素到栈顶pop() 弹出栈顶元素peek() 返回栈顶元素is_empty() 判断栈是否为空size() 返回栈的元素个数class Stack(): def __init__(self,list=[]): '''初始化一个栈''' self.__stack = list def push(self,item):
2021-04-08 19:13:09 263
原创 Python实现单向链表 单向循环链表 双向链表
单向链表class Node: def __init__(self,var): self.var = var self.next = Noneclass SingleLinkList: def __init__(self,node=None): self.__head = node # 判断链表是否为空 def is_empty(self): return self.__head == None
2021-04-07 20:00:52 211
原创 Python爬虫-5 scrapy框架
1 安装2 框架组成引擎(engine)下载器(downloader)爬虫spiders调度器(scheduler)管道(Item pipeline)3 工作原理4 如何使用5 保存数据的流程如果要把数据通过`json`形式 保存在文件的话,那么 pipeline 文件中,应该使用 JsonLinesItemExporter 方法在爬虫文件中,请求其他的链接地址传递请求的参数获取传递的参数如果项目初始的请求方式就是 post 的话, 那么需要 在 爬虫文件中 重写 start_request 方法scra.
2021-03-24 19:15:57 250
原创 Python爬虫-4 selenium
selenium支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真实浏览器完成测试。selenium也是支持无界面浏览器操作的使用selenium+chromedriver模拟浏览器行为获取数据selenium相当于是一个机器人。可以模拟人类在浏览器上的一些行为,自动处理浏览器上的一些行为,比如点击,填充数据,删除cookie等。chromedriver是一个驱动Chrome浏览器的驱动程序,使用他才
2021-03-22 14:03:28 245
原创 BeautifulSoup练习
中国天气网http://www.weather.com.cn/textFC/hb.shtml爬取除了港澳台所有地区的城市名和最低气温然后再获取温度最低是个城市import requestsfrom bs4 import BeautifulSoupfrom pyecharts.charts import Barfrom pyecharts import optionsheaders = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Wi
2021-03-19 15:27:26 514 4
原创 xpath练习
买家秀http://www.tbqq.net/爬取图片与名字import requestsimport osfrom lxml import etreefrom urllib import requestimport threadingdef maijiaxiu(url,page): res = requests.get(url=url,headers=headers) # print(res.text) content = res.text tree =
2021-03-16 19:33:55 695
原创 爬取站长之家
爬取站长之家爬取图片https://sc.chinaz.com/tupian/可以随便找一个分类进行爬取练习注意:这里的src存在一个懒加载,你先定位到第一张图片的代码块,然后找到最后一张图片的代码块,你会发现这里的src还是src2,如果你把页面翻到最后一张图片,你再去看src就是src了,多看源码这里我就没有去做分页爬取了,大家也可以去试一试分页爬取import requestsfrom lxml import etreefrom urllib import requestimport
2021-03-16 18:56:02 679
原创 Python爬虫-2 xpath语法
XPath使用xpathpip install lxmlimport lxmlfrom lxml import etreeXPath Helper插件chrome插件网:http://www.cnplugins.com/添加插件Ctrl + Shift + X打开或关闭插件XPath 术语节点(Node)在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。选取节点X
2021-03-16 17:25:03 204
原创 爬取一些翻译
百度翻译找到百度翻译这个页面,右键检查,点到Network,再点一下XHR,再在那块翻译板上随便输入点什么,再删除,直到出现sug这个接口,点到sug,我们看一下Response,可以很清楚的看到是一个json字符串,从Headers中的General可以清楚的看到这是一个post请求,From Data里的kw参数就是你要翻译的数据演示如下:import requestsurl = 'https://fanyi.baidu.com/sug'headers = { 'User-Ag
2021-03-16 11:07:51 546 3
原创 Python爬虫-1 请求头快速添加引号
urllib库图片下载import urlliburllib.request.urlretrieve(url='图片地址',filename='存储路径')# 掌握这一个方法就好了如果你不使用这个方法,就需要先获取图片的二进制数据,也就是对图片地址发起请求,,再以wb的方式写入文件注意这只是演示,import requestscontent = requests.get(url='图片地址',headers=headers).contentwith open('c,存储路径','wb'
2021-03-15 09:20:18 1005
原创 MySQL基础-5 索引和事务
索引就和文件目录差不多,你点一下目录,就可以快速定位到你所点击目录的内容MySQL必须从第1条记录开始然后读完整个表直到找出相关的行,表的数据越多,花费的时间就越多;如果表中查询的列有一个索引,MySQL能快速到达一个位置去搜寻到数据文件的中间,没有必要查看所有数据。1 索引分类索引类型功能说明普通索引最基本的索引,它没有任何限制唯一索引某一列启用了唯一索引则不准许这一列的行数据中有重复的值。针对这一列的每一行数据都要求是唯一的 unique主键索引它是一种
2021-02-26 14:54:55 158 1
原创 Python操作MySQL数据库
增:删:改:查这是我所操作的表的数据mysql> create table X( -> name varchar(30), -> age int);Query OK, 0 rows affected (0.02 sec)mysql> insert into X values('张三',18),('李四',16),('王五',20);Query OK, 3 rows affected (0.00 sec)mysql> select * from .
2021-02-25 20:49:04 114 1
原创 MySQL基础-4 多表联查数据库备份与恢复
多表查询1.表与表的关系一对一一对多(多对一)多对多(需要创建中间表)2.合并结果集作用:就是将两个select语句的查询结果合并到一起两种方式:- union:联合之后会去除重复的结果- union all:获取所有的结果演示:mysql> create table X( -> name varchar(30), -> age int);Query OK, 0 rows affected (0.02 sec)mysql> crea
2021-02-25 20:09:57 237 1
原创 MySQL基础 练习题3
1.查询所有学生信息2.查询所有课程名称及学分3.查询所有学生的姓名和性别4.查询所有女学生的姓名和出生日期5.查询所有80后学生的姓名、性别和出生日期6.查询姓"杨"的学生姓名和性别7.查询姓"杨"名字两个字的学生姓名和性别8.查询姓"杨"名字三个字的学生姓名和性别9.查询名字中有"不"字或"嫣"字的学生的姓名10.查询没有录入家庭住址的学生姓名11.查询录入了家庭住址的学生姓名12.查询学生选课的所有日期13.查询学生的家庭住址14.查询男学生的生日按年龄从大到小排列15.查询年龄最大的学生的出生日期.
2021-02-24 20:22:48 873
原创 MySQL基础 练习题2
1、 查询 students 表中的所有记录的 sname、ssex 和 class 列。2、 查询教师所有的单位即不重复的 depart 列。3、 查询 students 表的所有记录。4、 查询scores 表中成绩在 60 到 80 之间的所有记录。5、 查询 scores 表中成绩为 85,86 或 88 的记录。6、 查询students 表中“95031”班或性别为“女”的同学记录。7、 以 class 降序查询students 表的所有记录。8、 以 cno 升序、 degree .
2021-02-24 17:22:07 5049
原创 MySQL基础 练习题1
1.列出至少有一个员工的所有部门。2.列出薪金比"刘一"多的所有员工。3.列出所有员工的姓名及其直接上级的姓名。4.列出受雇日期早于其直接上级的所有员工。5.列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门。6.列出所有job为“职员”的姓名及其部门名称。7.列出最低薪金大于1500的各种工作。8.列出在部门 "销售部" 工作的员工的姓名,假定不知道销售部的部门编号。9.列出薪金高于公司平均薪金的所有员工。10.列出与"周八"从事相同工作的所有员工。11.列出薪金等于部门30中员工的薪金的所有.
2021-02-24 11:43:54 1480 1
原创 MySQL基础-3 数据完整性
数据完整性作用:保证用户输入的数据保存到数据库中是正确的实质:创建表的时候给表中的字段添加约束1.实体完整性实体:表中的一行或者一条记录代表一个实体实体完整性的作用:标识每一行数据不重复约束类型:主键约束【primary key】唯一约束【unique】自动增长列【auto_increment】1.1主键约束特点:数据唯一,且不能为null主关键字可以是表中的一个字段或者多个字段,它的值用来唯一标识表中的某一条记场景:在多个表的关联关系中演示:创建一个学生表id作为主键直
2021-02-23 15:31:43 993 2
原创 MySQL基础-2 查询语句详解
DQL:Data QueryLanguage 数据查询语言标准语法:数据库执行DQL语言不会对数据库中的数据发生任何改变,而是让数据库发送查询结果到客户端查询返回的结果其实是一张虚拟表1 基础查询查询所有字段的数据:(table_name指的是表名,字段就是我们所说的列)select * from table_name;查询指定字段的数据:(不同字段之间用,隔开)select 字段1,字段2…from table_name;2 条件查询主要结合where的使用between…and: 介
2021-02-22 19:44:32 3483 3
原创 MySQL基础-1 数据库基础操作、创建和删除表、对表进行增删改查、alter操作
MySQL基础一、数据库简介1.数据库系统1.1数据库DataBase【DB】,指的是长期保存到计算机上的数据,按照一定顺序组织,可以被各种用户或者应用共享的数据集合持久化存储 / 临时存储(缓存)【用于存储数据的地方,可以视为存储数据的容器】1.2数据库管理系统DataBase Management System【DBMS】,能够管理和操作数据库的大型的软件数据库是CS模式: Client/Server用于建立、使用和维护数据库,对数据库进行统一的管理和控制,为了保证数据库的安全
2021-02-22 17:40:36 400 2
原创 浙大版《Python 程序设计》题目集函数题
第6章函数-1 使用函数求特殊a串数列和给定两个均不超过9的正整数a和n,要求编写函数fn(a,n) 求a+aa+aaa++⋯+aa⋯aa(n个a)之和,fn须返回的是数列和函数接口定义:fn(a,n)其中 a 和 n 都是用户传入的参数。 a 的值在[1, 9]范围;n 是[1, 9]区间内的个位数。函数须返回级数和裁判测试程序样例:/* 请在这里填写答案 */a,b=input().split()s=fn(int(a),int(b))print(s)输入样例:在这里给出一组输入
2021-02-06 19:58:30 1709 2
原创 浙大版《Python 程序设计》题目集第6章-6——第7章-1
第6章-6 求指定层的元素个数 (40 分)输入一个嵌套列表,再输入层数,求该层的数字元素个数。输入格式:第一行输入列表 第二行输入层数输出格式:在一行中输出元素个数输入样例:在这里给出一组输入。例如:[1,2,[3,4,[5,6],7],8]3输出样例:在这里给出相应的输出。例如:2答案样例:s = eval(input())r = int(input())while r > 0: r -= 1 c = 0 a = [] for i
2021-02-06 19:32:59 1233 1
原创 浙大版《Python 程序设计》题目集第6章-1——第6章-5
第6章-1 输入列表,求列表元素和(eval输入应用)第6章-2 一帮一第6章-3 列表或元组的数字元素求和第6章-4 列表数字元素加权和(1)第6章-5 列表元素个数的加权和(1)第6章-1 输入列表,求列表元素和(eval输入应用)在一行中输入列表,输出列表元素的和。输入格式:一行中输入列表。输出格式:在一行中输出列表元素的和。输入样例:[3,8,-5]输入样例:6答案样例:print(sum(eval(input())))第6章-2 一帮一“一帮一学习小组”是中小.
2021-02-04 20:32:04 960 3
原创 浙大版《Python 程序设计》题目集第5章-7——第5章-11
第5章-7 列表去重第5章-8 能被3,5和7整除的数的个数(用集合实现)第5章-9 求矩阵鞍点的个数第5章-10 两数之和第5章-11 字典合并第5章-7 列表去重输入一个列表,去掉列表中重复的数字,按原来次序输出!输入格式:在一行中输入列表输出格式:在一行中输出不重复列表元素输入样例:在这里给出一组输入。例如:[4,7,5,6,8,6,9,5] 输出样例:在这里给出相应的输出。例如:4 7 5 6 8 9答案样例:li = eval(input())s = []fo.
2021-02-04 19:37:45 1997
原创 浙大版《Python 程序设计》题目集第5章-2——第5章-6
第5章-2 图的字典表示第5章-3 四则运算(用字典实现)第5章-4 分析活动投票情况第5章-5 统计字符出现次数第5章-6 统计工龄第5章-2 图的字典表示图的字典表示。输入多行字符串,每行表示一个顶点和该顶点相连的边及长度,输出顶点数,边数,边的总长度。比如上图O点表示:{‘O’:{‘A’:2,‘B’:5,‘C’:4}}。用eval函数处理输入,eval函数具体用法见第六章内置函数。输入格式:第一行表示输入的行数 下面每行输入表示一个顶点和该顶点相连的边及长度的字符串输出格式:在一行中.
2021-02-04 18:09:52 852
原创 浙大版《Python 程序设计》题目集第4章-27——第5章-1
第4章-27 二维数组中每行最大值和每行和第4章-28 矩阵转置第4章-29 找出不是两个数组共有的元素第4章-30 找完数第5章-1 输出星期名缩写第4章-27 二维数组中每行最大值和每行和求一个3*3二维数组中每行的最大值和每行的和。输入格式:在一行中输入9个小于100的整数,其间各以一个空格间隔输出格式:输出3行3列的二维数组,并在每行后面分别输出每行最大值和每行元素的和,每个数据输出占4列。输入样例:3 6 5 9 8 2 1 4 5输出样例: 3 6 5 6.
2021-02-04 17:09:03 1151 2
原创 浙大版《Python 程序设计》题目集第4章-22——第4章-26
第4章-22 找鞍点一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。本题要求编写程序,求一个给定的n阶方阵的鞍点。输入格式:输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。输出格式:输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。输入样例1:41 7 4 14 8 3 61 6 1 20 7 8 9输出样例1:2 1输入
2021-02-03 18:40:42 934
原创 浙大版《Python 程序设计》题目集第4章-17——第4章-21
第4章-17 水仙花数(20 分)第4章-18 猴子选大王第4章-19 矩阵运算第4章-20 求矩阵各行元素之和第4章-21 判断上三角矩阵第4章-17 水仙花数(20 分)水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。 例如:153=1×1×1+5×5×5+3×3×3。本题要求编写程序,计算所有N位水仙花数。输入格式:输入在一行中给出一个正整数N(3≤N≤5)输出格式:按递增顺序输出所有N位水仙花数,每个数字占一行。输入样例:在这里给出一组输入。例如:.
2021-02-03 09:31:29 1332
原创 浙大版《Python 程序设计》题目集第4章-12——第4章-16
第4章-12 求满足条件的斐波那契数斐波那契数,亦称之为斐波那契数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……,这个数列从第3项开始,每一项都等于前两项之和。求大于输入数的最小斐波那契数。输入格式:在一行输人一个正整数n(n>=10)。输出格式:在一行输出大于n的最小斐波那契数。输入样例:在这里给出一组输入。例如:10输出样例:在这里给出相应的输出。例如:13答案样例:a = int(input())x = 13y = 21while x <
2021-02-02 19:29:22 1252
原创 浙大版《Python 程序设计》题目集第4章-7——第4章-11
第4章-7 统计学生平均成绩与及格人数 (15分)本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。输入格式:输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。输出格式:按照以下格式输出:average = 成绩均值count = 及格人数其中平均值精确到小数点后一位。输入样例:577 54 92 73 60输出样例:average = 71.2count = 4
2021-02-02 17:19:15 2162 4
原创 浙大版《Python 程序设计》题目集第4章-2——第4章-6
第4章-2 统计素数并求和第4章-3 猴子吃桃问题第4章-4 验证“哥德巴赫猜想”第4章-5 求e的近似值第4章-6 输出前 n 个Fibonacci数第4章-2 统计素数并求和本题要求统计给定整数M和N区间内素数的个数并对它们求和。输入格式:输入在一行中给出两个正整数M和N(1≤M≤N≤500)。输出格式:在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。输入样例:10 31输出样例:7 143答案样例:m,n = input().split()m = .
2021-02-02 10:47:27 1286 2
原创 Python json模块和pickle模块
json模块# 序列化:将数据从内存持久化保存到硬盘(不一定是硬盘)的过程# 反序列化:将数据从硬盘加载到内存的过程# write 只能写入二进制或字符串# 字典、列表、元组和数字等都不能直接写入到文件里# 将数据转换成为字符串:repr/str 使用json模块# json的本质就是字符串,区别在于json里要用双引号表示字符串# 将数据转换成为二进制:使用pickle模块import jsonfile = open('name.json', 'w', encoding='utf8
2021-02-01 21:10:38 124
原创 Python正则表达式
匹配单个字符与数字格式含义.匹配除换行符以外的任意字符[0123456789][]是字符集合,表示匹配方括号中所包含的任意一个字符[good]匹配good中任意一个字符[a-z]匹配任意小写字母[A-Z]匹配任意大写字母[0-9]匹配任意数字,类似[0123456789][0-9a-zA-Z]匹配任意的数字和字母[0-9a-zA-Z_]匹配任意的数字、字母和下划线[^good]匹配除了good这几个字母以外的所有字符,中
2021-02-01 20:54:52 174 1
原创 浙大版《Python 程序设计》题目集第3章-19——第4章-1
第3章-19 找最长的字符串第3章-20 逆序的三位数第3章-21 判断回文字符串第3章-22 输出大写英文字母第4章-1 生成3的乘方表第3章-19 找最长的字符串本题要求编写程序,针对输入的N个字符串,输出其中最长的字符串。输入格式:输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。输出格式:在一行中用以下格式输出最长的字符串:The longest is: 最长的字符串如果字符串的长度相同,则输出先输入的字符串。输入样例:.
2021-02-01 15:26:03 1506 3
原创 浙大版《Python 程序设计》题目集第3章-14——第3章-18
第3章-14 字符串字母大小写转换本题要求编写程序,对一个以“#”结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。输入格式:输入为一个以“#”结束的字符串(不超过30个字符)。输出格式:在一行中输出大小写转换后的结果字符串。输入样例:Hello World! 123#输出样例:hELLO wORLD! 123答案样例:print(input()[:-1].swapcase())第3章-15 统计一行文本的单词个数 (15分)本题
2021-02-01 11:37:32 1627 3
原创 浙大版《Python 程序设计》题目集第3章-9——第3章-13
第3章-9 字符串转换成十进制整数第3章-10 统计大写辅音字母第3章-11 字符串排序第3章-12 求整数的位数及各位数字之和第3章-13 字符串替换第3章-9 字符串转换成十进制整数输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果在第一个十六进制字符之前存在字符“-”,则代表该数是负数。输入格式:输入在一行中给出一个以#结束的非空字符串。输出格式:在一行中输出转换后的十进制数。题目保证输出在长.
2021-01-30 16:02:30 1616 3
原创 浙大版《Python 程序设计》题目集第3章-4——第3章-8
第3章-4 查找指定字符第3章-5 字符转换第3章-6 求整数序列中出现次数最多的数第3章-7 求最大值及其下标第3章-8 字符串逆序第3章-4 查找指定字符本题要求编写程序,从给定字符串中查找某指定的字符。输入格式:输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。输出格式:如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。输入样例1:mprogramming.
2021-01-30 15:28:03 1291 3
原创 浙大版《Python 程序设计》题目集第2章-13——第3章-3
第2章-13 分段计算居民水费第2章-14 求整数段和第3章-1 大于身高的平均值 (10分)第3章-2 查验身份证第2章-13 分段计算居民水费为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。输入格式:输入在一行中给出非负实数x。输出格式:在一行输出应交的水费,精确到小数点后2位。输入样例1:12输出样例1:16.00输入样例2:.
2021-01-29 19:02:03 1346 1
原创 浙大版《Python 程序设计》题目集第2章-8——第2章-12
第2章-8 转换函数使用第2章-9 比较大小第2章-10 输出华氏-摄氏温度转换表第2章-11 求平方与倒数序列的部分和第2章-12 输出三角形面积和周长第2章-8 转换函数使用输入一个整数和进制,转换成十进制输出输入格式:在一行输入整数和进制输出格式:在一行十进制输出结果输入样例:在这里给出一组输入。例如:45,8输出样例:在这里给出相应的输出。例如:37答案样例:a,b = input().split(',')print(int(a,int(b)))大家可以点击这.
2021-01-29 16:16:24 881 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人