python
爱喝水的小鲨鱼
Python领域优质创作者,获的过蓝桥杯国赛二等奖,主要学习方向有Python、机器学习、数据挖掘、数据分析、网络爬虫
展开
-
Python数据库操作 ---- pymysql教学
文章主要讲解了pymysql的使用,创建数据库、创建数据表、插入数据、查询数据、更新数据、删除数据原创 2023-01-17 09:45:29 · 25082 阅读 · 258 评论 -
[Python进阶]Python闭包的深入浅出
Python中的闭包并没有那么神秘,本文带你深入浅出的剖析python的闭包产生的原因,自由变量的使用,以及探究数据是怎样存储到这个’包’?。这个包指的是什么?原创 2022-10-16 21:42:35 · 3029 阅读 · 94 评论 -
Python必知必会 os 模块详解
Python必知必会的os模块的操作,使用os模块检查文件是否存在,创建文件,删除文件,查看系统路径和环境变量等一系列和系统进行交互的操作原创 2022-09-18 15:21:39 · 51130 阅读 · 87 评论 -
Python队列Queue详解,超详细
python队列实现与用法,queue块是Python内置的标准模块,模块实现了三种类型的队列,它们的区别仅仅是条目取回的顺序,分别由3个类进行表示,Queue,LifoQueue,PriorityQueue先进先出队列原创 2022-07-08 21:31:12 · 57483 阅读 · 7 评论 -
2020第十一届蓝桥杯省赛python真题详解
第十一届蓝桥杯省赛python试题A:门牌制作试题B:寻找2020试题C:跑步锻炼试题D:蛇形填数试题E: 排序试题F:成绩统计试题G:单词分析试题H:数字三角形试题I:平面切分试题J:装饰珠试题A:门牌制作s = 0for i in range(1,2021): s += str(i).count('2')print(s)# 624试题B:寻找2020nums = [[2, 2, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0],原创 2022-05-12 11:22:24 · 5457 阅读 · 0 评论 -
第十三届蓝桥杯Python 大学B组真题详解
第十三届蓝桥杯Python B组真题详解,题解分析,思路清晰,代码易懂原创 2022-05-08 23:52:57 · 16486 阅读 · 11 评论 -
python字典排序的两种方案,并产生排名
方案1:将字典中的项转化为(值,键) 元组from random import randintd = {k:randint(60,100) for k in 'abcdefg'} # 生成字典# 列表解析,转化l = [(v,k) for k, v in d.items()]# 排序print(sorted(l,reverse=False)) # 升序print(sorted(l,reverse=True)) # 降序# 也可以使用zip函数进行转化l = list(zip(d.va原创 2022-05-06 22:10:36 · 1643 阅读 · 0 评论 -
pythonScarpy框架项目实战
爬虫实战创建项目项目需求分析网站爬虫文件spiders`items.py``pipelines.py``settings.py`总结:创建项目在终端输入 scrapy startproject xiaomai进入到项目实例下 cd xiaomai创建爬虫文件夹scrapy genspider xiaomai_pro www.xxx.com项目需求目标网站:https://www.chinaseed114.com/目的需求 获取所有小麦种子的信息https://www.chinaseed11原创 2022-04-28 18:15:52 · 1635 阅读 · 1 评论 -
爬虫使用xpath解析时返回为空,获取不到相应的元素的原因和解决办法
xpath写的对,但是返回值为空在写爬虫的时候解析网页,使用最多的解析方式就是xpath解析,但是在使用在使用xpath解析的时候,通常会遇到会获取不到相应元素的情况原因通常是前端做的一些反爬措施,在编写网页的时候通常省略一层标签,但是被省略的标签浏览器会自动补充,修改成正确的结构我们通过浏览器进行检查的时候,看到的代码结构是已经被浏览器修改后的,而爬虫获取到的是源代码所以根据修改后的xpath解析源代码会找不到相应的元素...原创 2022-04-22 20:29:20 · 18800 阅读 · 13 评论 -
Scrapy基础详解
scrapy框架scrapy框架框架是一个集成很多功能并且具有很强通用性的一个项目模板如何学习框架专门学习封装各种功能的详细用法什么是scrapy框架爬虫中的一个明星框架,功能:高性能的的持久性的的储存,异步的数据下载,高性能的数据解析,分布式scrapy框架基本使用环境的安装windows:pycharm 中直接就可以安装 pip install scrapy创建一个工程:scrapy startproject xxxcd xxx在spide原创 2021-10-11 19:58:22 · 1184 阅读 · 0 评论 -
蓝桥杯--寻找2020
【问题描述】小蓝有一个数字矩阵,里面只包含数字 0 和 2。小蓝很喜欢 2020,他想找到这个数字矩阵中有多少个 2020 。小蓝只关注三种构成 2020 的方式:• 同一行里面连续四个字符从左到右构成 2020。• 同一列里面连续四个字符从上到下构成 2020。• 在一条从左上到右下的斜线上连续四个字符,从左上到右下构成 2020。例如,对于下面的矩阵:220000000000002202000000000022002020一共有 5 个 2020。其中 1 个是在同一行里的.原创 2022-04-05 17:45:47 · 1012 阅读 · 0 评论 -
蓝桥杯--蛇形填数
【问题描述】如下图所示,小明用从 1 开始的正整数“蛇形”填充无限大的矩阵。1 2 6 7 15 …3 5 8 14 …4 9 13 …10 12 …11 ……容易看出矩阵第二行第二列中的数是 5。请你计算矩阵中第 20 行第 20 列的数是多少?lst = [[] for i in range(40)]num = 1lst[0].append(1)for i in range(2,40): # 控制行数 if i%2==0: # 当行数是偶数,从右上到左下.原创 2022-04-05 17:38:28 · 568 阅读 · 0 评论 -
python round()函数保留小数位数的详细用法及round函数的坑
关于round函数的详细用法和一些由于机器数问题产生的错误情况round(number[, ndigits])返回number舍入到小数点后ndigits为精度的值,如果ndigits被省略则会返回最接近输入值的整数原创 2022-03-27 18:42:28 · 9526 阅读 · 0 评论 -
python.pickle() 数据对象的持久性储存,超详细
模块 pickle实现了对一个 Python 对象结构的二进制序列化和反序列化,将数据对象以二进制的形式进行保存pickle.dump(obj, file, protocol=None, *, fix_imports=True, buffer_callback=None)将对象 obj 封存以后的对象写入已打开的 file object file。它等同于 Pickler(file, protocol).dump(obj)。pickle.dumps(obj, protocol=None,原创 2022-03-06 11:04:31 · 1452 阅读 · 0 评论 -
数据分析--Matplotlib
Matplotlib基本布局对象图表样式的修改以及图表装饰的接口基础图表绘制直方图散点图饼图柱状图折线图表格不同坐标系下的图象matplotlib3D基本布局对象figure对象是所有图表绘制的基础构建图标的主要步骤准备数据生成图表传入数据调整图标的装饰图表样式的修改以及图表装饰的接口Matplotlib定义详细的图标装饰项接口,能够对图表几乎每一个细节进行修改修改图表样式import matplotlib.pyplot as pltimport numpy as npfi原创 2022-02-13 19:18:59 · 1219 阅读 · 0 评论 -
数据分析--pandas 处理结构化数据
pandas 处理结构化数据基本数据结构SeriesDataFrameDataFrame对象的访问基于pandas的index对象访问操作pandas的index对象索引的不同访问方式调用方式调用方式间的区别特殊参数类型数学统计和计算工具统计函数,协方差、相关系数、排序窗口函数数学聚合和分组运算agg函数的聚合操作transform函数的转换操作apply函数的一般操作基本数据结构Series类似于一维数组于字典的结合,是一个 有索引的一维数组。values 一组数据(ndarray类型)inde原创 2022-02-04 20:48:44 · 2132 阅读 · 0 评论 -
数据分析--NumPy
NumPy多维数组对象:ndarray对象ndarray对象的创建ndarray对象的数据类型ndarray对象的索引,切片和迭代ndarray对象的shape操作ndarray对象的基础操作不足多维数组对象:ndarray对象ndarray对象保存同一类型的数据,访问方式类似于列表,通过整数下标进行索引属性- shape 返回一个元组,用于表示ndarray各个维度的长度,- 元组的长度为数的维度,- 元组的每一个数值代表ndarray每一个维度的长度ndim ndarray的维度si原创 2022-01-29 22:00:29 · 686 阅读 · 0 评论 -
蓝桥杯--关联矩阵
试题 算法训练 关联矩阵资源限制时间限制:1.0s 内存限制:512.0MB问题描述 有一个n个结点m条边的有向图,请输出他的关联矩阵。输入格式 第一行两个整数n、m,表示图中结点和边的数目。n<=100,m<=1000。 接下来m行,每行两个整数a、b,表示图中有(a,b)边。 注意图中可能含有重边,但不会有自环。输出格式 输出该图的关联矩阵,注意请勿改变边和结点的顺序。样例输入5 91 23 11 52 52 32 33 24 35 4原创 2022-01-21 21:03:00 · 210 阅读 · 0 评论 -
力扣 整数反转
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回0。假设环境不允许存储 64 位整数(有符号或无符号)。 def reverse(self, x: int) -> int: if x >= 0: x = str(x)[::-1] x = int(x) if x > (2 ** 31原创 2021-12-02 18:22:19 · 146 阅读 · 0 评论 -
爬楼梯 -- 斐波那契数列,尾递归
爬楼梯假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?def weiT(n,a=1,b=2,c=3): if n==1: return 1 elif n==2: return 2 else: if n==c: return a+b else: return weiT(n,a=b,b=a+b,c=.原创 2021-11-18 16:15:59 · 1480 阅读 · 0 评论 -
DRF 使用生coreapi成接口文档遇到的问题‘CSRFCheck‘、‘AutoSchema‘
项目依赖版本:Django 1.11.1Django REST framework 3.10.1python 3.8coreapi 2.3.3安装依赖 pip install coreapi使用:项目中的 urls.py# 导入from rest_framework.documentation import include_docs_urls# 添加路由urlpatterns = [ url(r'docs/', include_docs_urls(title='接口文档')原创 2021-11-17 13:01:36 · 994 阅读 · 0 评论 -
知识点总结(1)
pthon初学原创 2020-11-01 08:43:37 · 300 阅读 · 1 评论 -
知识点总结(2)
一、基本数据类型:主要包括整数、浮点数、复数1.整数:正整数、负整数和零并且她的位数是任意的(当超过计算机自身的计算功能时,会自动专用高精度计算)整数类型包括十进制、八进制、十六进制、二进制⑴八进制: 逢八进一,并且0o或0O开头⑵十六进制:逢十六进一,并且以0o或0X2、浮点数:由整数部分和小数部分组成3、复数:由实部和虚部组成,并且使用j或J表示虚部 例:3.14+12.5j4:字符串就是连续的字符序列,可以是计算机所能表示的一切字符的集合5:布尔类型主要用来表示真或假,标识符True原创 2020-11-08 14:16:47 · 196 阅读 · 0 评论 -
知识点总结 (3)
常用类型转化函数int(x) . 将X转换成整数类型float(x) 将X转换成浮点型complex(real[,imag]) 创建一个复数str(x) 将x转换成字符串repr(x) 将x转换为表达式字符串eval(str) 计算字符串中有效Python表达式,并返回一个对象chr(x) 将整数x转换成一个字符ord(x) 将一个字符x转换成它对应的整数值hex(x) 将一个数x转化成十六进制的字符串oct(原创 2020-11-18 08:38:36 · 204 阅读 · 0 评论 -
知识点总结 (4)
4.1程序结构1.顺序结构2.选择结构3.循环结构4.2选择语句:if语句、if…else语句和if…elif…else语句①if语句: if表达式: 语句块②if…else语句: If表达式: 语句块1 else: 语句块2③if…elif…else语句: if表达式1: 语句块1 elif表达式2: ...原创 2020-11-20 18:19:27 · 195 阅读 · 0 评论 -
面向对象练习(1)
按题目编程实现下列功能。(22分)要求:按照题目所给变量名称、类型和方法名称进行编程,禁止修改(1) 语言类(Language)Hy常量: 母语类型(motherLan) 字符串类型 常量值为中文 成员方法: showForein( ),输出所掌握的外语语种(2) 教师类(Teacher) 成员变量: 工号(tId) String类型 姓名(name) .原创 2020-11-30 21:38:31 · 196 阅读 · 0 评论 -
第二次考核订正
第一题有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。a = 2s = 0for i in range(1,21): s = s + a/i a = a+iprint(s)第二题编写一个应用程序,接受用户输入的一行字符串,判断该字符串是否是回文数?num1 = str(input("请输入你想要判断的数字"))num2 = num1[::-1]if num1 == num2 : print(num1,"是一个回文原创 2020-12-01 20:49:13 · 182 阅读 · 0 评论 -
python异常处理
python 中常见的异常异常描述NameError尝试访问一个没有声明的变量引发的错误IndexError索引超出序列引发的错误IndentationError缩进错误ValueError传入值错误KeyError请求一个不存在的字典关键字引发的错误IOError输入输出错误(如要读取的文件不存在)ImportError当import语句无法找到模块或from无法在模块中找到相应名称时引发的错误AttributeError尝试原创 2020-12-03 10:30:54 · 200 阅读 · 0 评论 -
找出数组中重复的数字
随机生成一个长度为n的数组nums,数组 nums 里的所有数字都在 0~n-2 的范围内找出数组中其中一个重复的数字,并统计次数n 的范围:2~100import randomn = random.randint(2, 100)nums = []for i in range(0, n): j = random.randint(0, n-2) nums.append(j)print(nums)while True: a = len(nums)原创 2020-12-05 20:56:54 · 158 阅读 · 0 评论 -
获取文件的基本信息
with open("message.txt", 'r') as file: while True: line = file.readline() if line =='': break print(line)import osdef formatTime(longtime): ''' 格式化日期时间函数 longtime:要格式化的时间 :param longtime: :ret原创 2020-12-09 10:08:42 · 322 阅读 · 0 评论 -
模块知识点总结及复习
模块的概述1.在python中,一个扩展名为.py的文件都是一个模块2.把有特定功能的代码放在一个文件中作为一个模块,从而方便其他程序和脚本的导入并使用。另外也可以避免函数名与变量名冲突3.提高代码的可维护性4.提高代码的可重用性自定义模块作用:规范代码,让代码更易阅读方便其他程序员使用已经编写好的代码,提高开发效率创建模块:设置的模块名不能时python自带的标准模块名称模块文件的扩展名必须是.py使用import语句导入模块import modulename [as alias]原创 2020-12-20 11:47:41 · 223 阅读 · 0 评论 -
用位运算解题
1-1000这1000个数放在含有1001个元素的数组中,只有唯一个元素重复,其他均只出现一次。每个数组元素,只能访问一次,设计一个算法,将其找出来,不用辅助储存空间,能否设计一个算发实现位运算解题import randoma = []n = 1001for i in range(n-1): a.append(i+1)print(a)b = random.randint(0,n-2)a.insert(a[b],random.randint(1,n-1))print(a)x.原创 2021-01-21 19:41:42 · 232 阅读 · 0 评论 -
蓝桥杯 算法 猴子吃包子、 查找整数
猴子吃包子a = input().split()x = int(a[0])y = int(a[1])z = int(a[2])x1 = int(a[3])y1 = int(a[4])z1 = int(a[5])p = a[6]s = (x1/x) + (y1/y) + (z1/z)print(format(s, ('.'+p+'f')))查找整数try: n = input() list = input().split() num = input(.原创 2021-03-07 20:11:01 · 137 阅读 · 0 评论 -
Django用户注册、登录、编辑信息、删除(简易版)
views.py# Create your views here.from django.shortcuts import render, HttpResponse, redirectfrom app01 import models# 视图函数必须接受一个形参def ab_render(request): # user_dict = {'username': 'jason', 'age':18} # 第一种传值方式 更加精确,节省资源 # return r.原创 2021-03-21 08:33:11 · 744 阅读 · 0 评论 -
Django学习第二周
views.py文件from django.shortcuts import render, HttpResponse# Create your views here.from django.views import Viewclass Mylgoin(View): def get(self, request): return render(request, 'login.html') def post(self, request): ret.原创 2021-03-26 21:03:57 · 206 阅读 · 4 评论 -
Django BBS项目 models.py 文件
models.py 文件字段的书写,字段的关系from django.db import models# Create your models here.""" 先写普通字段,之后再写外键字段 """from django.contrib.auth.models import AbstractUser# 用户表class UserInfo(AbstractUser): phone = models.BigIntegerField(verbose_name='手机.原创 2021-04-03 10:08:05 · 198 阅读 · 0 评论 -
leetCode 岛屿问题
leetCode 岛屿问题'''岛屿数量问题描述 给定一个有’1‘(陆地)和’0‘组成的二维网格 计算到预计的数量。 一个岛被水包围而成,并且它是通过水平方向相邻的陆地链接而成的 输入: 11110 11010 11000 00000 输出:1 输入 11000 11000 00100 00011 输出 3'''# 算法一 深度搜索lands = 0def .原创 2021-04-10 21:27:28 · 333 阅读 · 0 评论 -
蓝桥杯2019 数的分解
把 2019 分解成 3 个各不相同的正整数之和,并且要求每个正整数都不包含数字 2 和 4,一共有多少种不同的分解方法?注意交换 3 个整数的顺序被视为同一种方法,例如 1000+1001+18 和1001+1000+18 被视为同一种。1、三个数不能相同,2、三个数中最大的数为20163、不能出现复数sum1 = 0# 生成第一个数for i in range(1, 2017): a = str(i) if '2' in a or '4' in a: .原创 2021-04-16 21:00:13 · 322 阅读 · 0 评论 -
爬取药监总局各个公司的信息
import requestsimport json# 网页中有的数据是动态加载的# 首页中对应的企业信息数据是通过ajax动态请求到的''' http://scxk.nmpa.gov.cn:81/xk/itownet/portal/dzpz.jsp?id=a8294d55ca1e448d8456f75f49f331df '''# 获取不同企业的idurl = ' http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.原创 2021-05-23 08:40:50 · 209 阅读 · 0 评论 -
冒泡排序,选择排序,插入排序
冒泡排序时间复杂度 O(n2)# 冒泡排序# 列表每相邻的数,如果前面比后面大,则交换这两个数# 一趟排序完成后,则无序区减少一个数,有序增加一个数import randomdef bubble_sort(li): for i in range(len(li)-1): for j in range(len(li)-i-1): if li[j] > li[j+1]: li[j], li[j+1] = .原创 2021-05-29 11:48:42 · 152 阅读 · 3 评论
分享