
Python-Python的学习
文章平均质量分 81
记录我学习Python的过程,包括自学的作品和学校课程的一些作业,以及实习时候做过的东西。
TIM33470348
著有《Python数据分析:从小白到专家》一书。于2021年5月,由电子工业出版社和工信出版集团出版,是一本正式发行的图书,ISBN-13:9787121409233。
这本书能够面市,得感谢这么多年来,在我前进道路上一直陪伴我的亲人和好友,以及赏识我的各位长辈,老师和大佬们。尤其是在我低落的时候,仍然陪伴我,鼓励我,没有放弃我的挚友。
展开
-
2022年学习和实习总结——收获颇多
原来按照本科毕业那年既定的计划来看的话,我是打算转Java的。不过,今年2023届秋招Java岗的情况似乎不容乐观,身边好多我觉得能力出众的Java大佬都铩羽而归,最终只去了一些中厂和外资,这些开出的工资和大厂还是有一定差距的,着实惋惜。于是,我也就只能减少了投入到学习Java中的时间,打算重新回归C/C++。原创 2023-01-09 20:34:50 · 1844 阅读 · 16 评论 -
为基于elasticsearch和flask的web端检索系统增加新的检索功能
距离上次写博客已经有20天的光阴了,期间我为之前构建的系统增加了新的检索功能,这是记录了之前检索系统的博客:实习工作小结——下载和导入Elasticsearch模块实现自动比对的功能https://timtian.blog.youkuaiyun.com/article/details/124319573?spm=1001.2014.3001.5502接下来先看结果展示:基于Flask和ES的检索系统的系统演示在上面的视屏中可以看到,我们实现了多字段的检索,entity_id和entity_type是分开检索的,但是模板原创 2022-06-21 15:51:39 · 563 阅读 · 0 评论 -
实习工作小结-拆分大文件功能和Elasticsearch文档添加新字段
距离上次的博客已经有1个多月了,这个月里我主要精力放在了《计算理论》的期末考试上,28日终于考完了,考完感觉还不错,长舒一口气。上个月,实习单位里的事情也没干多少,跟领导也解释了,领导挺开明的,也没有多怪我。上个月没工作几天,就只完成了两个功能:拆分大文件功能和Elasticsearch文档添加新字段。这个文件一共90来G是读不进内存的,所以我们需要对其拆分。具体是这样的,有一个大文件上面呢有如下字段:pmid, span_start, span_end, entity string, entity typ原创 2022-06-01 11:44:01 · 469 阅读 · 1 评论 -
使用flask实现基于elasticsearch的web端搜索功能
概述干这个远程实习也有一个月了,感觉还不错,一天200的薪资对于一个在校大学生来讲已经不低了。上一周,领导布置了这一周的新的任务。大致要求就是做一个web端的搜索页面,大致逻辑如下图所示:首先呢,可以看到要求web端可以用flask也可以用streamlit,但我更熟悉flask,所以我用了flask写的。大致想法是先让用户选择上传文件的类型,是上传Pubmed ID,根据这个ID进行检索呢,还是上传关键字,根据这个key phrases来匹配title和abstract进行搜索。接着就是常规,原创 2022-04-22 10:18:04 · 1613 阅读 · 0 评论 -
实习工作小结——下载和导入Elasticsearch模块实现自动比对的功能
在之前的工作里我实现了批量下载文件和批量写入elasticsearch的功能,具体可以看这个博客:实习工作小结·批量下载文件和批量写入elasticsearchhttps://blog.youkuaiyun.com/qq_41938259/article/details/123862320?spm=1001.2014.3001.5501总的思路是,通过lxml解析器对原来的xml文件进行解析,提取出有用的信息,并导入到elasticsearch中去。下载模块是通过观察wget下载链接的规律,通过拆分字符串实现批量下原创 2022-04-21 13:53:57 · 1664 阅读 · 0 评论 -
Django实战(11)——使用folium进行地理数据可视化(准研一项目2)
序这次的工作是接着上一次的文章做的,上一次的文章主要是实现了“目标定位标绘”这个功能中的“筛选坐标”功能,最终我们将筛选出的坐标打印出来,具体可以看我上一篇文章的内容: Django实战(10)——地理数据可视化网站(准研一项目1)https://timtian.blog.youkuaiyun.com/article/details/119353720上一次实际上只是完成了筛选坐标的功能,这一次我们要实现的才是正真意义上的“地理数据可视...原创 2021-09-12 19:40:22 · 2284 阅读 · 0 评论 -
Django实战(10)——地理数据可视化网站(准研一项目1)
应该是由于之前和导师自我介绍的时候说自己会Django,所以还没到学校,就已经开始了这个项目。先来简单介绍下这个项目:它是一个给地理数据做可视化的项目,展示方式是WEB页面,用的是Django框架,必然是Python脚本语言。前端我看了,用的是bootstrap,不过目前我不用处理前端的东西,前端是由另几个学长来对付的。 先来看下主页: 我负责的是导航栏里的“功能选择”->“辅助决策”->“目标定位标绘”一栏,具体如图所示: ...原创 2021-08-03 19:51:42 · 2039 阅读 · 2 评论 -
爬虫被锁IP,报“很抱歉,由于您访问的URL有可能对网站造成安全威胁,您的访问被阻断。 您的请求ID是······“
昨天,同事让我爬取中国证券监督管理委员会的公墓金的公告,结果没多久就被锁ip了,如下图所示:结果到了今天早上也还是被锁,那怎么办呢?锁定ip一般都有这几种应对办法:1、技术处理,调节网页爬虫的请求频率。2、更换ip,自动更改IP地址反爬虫封锁,支持多线程3、网络处理,代理访问事实上,方法一是在出问题前就该考虑的,可以用time.sleep()来解决。但是,现在现在已经被锁了怎么办?我想了半天可以修改ip,最直接的办法就是连接手机热点,这样就不是用公司的ip了。这时候再用方法一,.原创 2021-05-12 09:59:38 · 32436 阅读 · 5 评论 -
用scrapy爬取Kelly Blue Book二手车网数据
这是我以前的一篇博文:数学建模用/Python爬虫实战——爬取Kelley Blue Book(KBB二手车交易网站)的交易信息这是我在去年数学建模校赛时候写的一个爬虫,用来获得数据分析需要的数据信息。这一次不同与上一次,上一次使用的beautifulsoup和正则匹配来获取数据,这一次使用的是css和xpath选择器,且是基于scrapy框架的。这是爬取的要求: 这一次实现了翻页功能,代码如下所示:items.py:...原创 2020-07-17 08:58:57 · 805 阅读 · 0 评论 -
Django实战(9)——为人脸识别系统添加随机抽签功能
这一篇基于上一篇的人脸识别系统:https://blog.youkuaiyun.com/qq_41938259/article/details/104587091这是这个学习项目的gitee地址:https://gitee.com/timtian139/WEBfaceRecognitionTest/tree/master/faceWeb这次主要是按照老师的要求增加了抽签的功能,一次抽两个人,抽到签的人...原创 2020-04-04 15:53:44 · 705 阅读 · 0 评论 -
Django实战(7)——在线人脸识别系统(第一步、实现图片上传和MySQL数据库的对接,ORM操作数据库)
首先这个项目是属于我的省级大创(大学生创新实验计划)的,最终实现的目标是可以上传图片作为人来能识别库,并且人脸识别结果用语音报出来。现在第一步,先实现数据库的对接,这一次用MySQL数据库,过几天也许会考虑改成Redis来存放,毕竟存放如数据库的是图片在服务器端的存放地址,而不可能是整个图片的信息;毕竟这是一个键值对,完全可以用Redis的String来存放。现在来具体介绍下views.p...原创 2020-02-28 19:36:30 · 3982 阅读 · 5 评论 -
人脸识别代码第一版
本代码使用了face_recognition三方库,它是需要numpy、dlib、cmake作支撑的。主要是用键值对存放图片和它对应的名字,最后打开摄像头,比对原有存放的人脸,用pyttsx3语音库来报出识别对象的名字。下一步准备改用数据库存放姓名和照片,实现完毕后再与django对接实现web端的人脸识别。以下是现在完成的代码,“下一步”还没有实现:import cv2impor...原创 2020-02-24 18:05:30 · 1712 阅读 · 0 评论 -
KNN算法Python实现
这是最后预测的输出结果,0和1就是最终分类的预测结果。以下是代码部分:import numpy as npimport matplotlib.pyplot as pltimport pandas as pd# 这个函数用于对列表的每个元素进行计数def findListNum(li): li = list(li) set1 = set(li) ...原创 2020-02-12 16:47:42 · 395 阅读 · 0 评论 -
二分K-means算法Python实现
是基于这篇博客修改的:https://blog.youkuaiyun.com/qq_41938259/article/details/104206107增加了簇的颜色和形状,I/O如下示例代码如下import matplotlib.pyplot as pltimport pandas as pdimport numpy as npdef findDistance(x, y): ...原创 2020-02-07 15:51:17 · 799 阅读 · 0 评论 -
K-means聚类算法Python实现
使用的数据集如下:https://download.youkuaiyun.com/download/qq_41938259/12141002这是I/O以下是代码:import matplotlib.pyplot as pltimport pandas as pdimport numpy as npdef findDistance(x, y): return np.sqrt(...原创 2020-02-07 09:36:06 · 1001 阅读 · 0 评论 -
使用改进的随机梯度下降法的逻辑回归
之前这篇博文使用的是梯度下降法的暴力法,计算了最优系数和绘制了决策边界:https://blog.youkuaiyun.com/qq_41938259/article/details/104163797这次使用了该进的随机梯度下降法,大大优化了复杂度,提高了运行速度import osimport pandas as pdimport matplotlib.pyplot as pltimp...原创 2020-02-06 10:43:31 · 483 阅读 · 0 评论 -
多元线性回归Python实现
不多废话,放I/O图这里给出相应的代码与注释import statsmodels.api as smfrom mpl_toolkits.mplot3d import Axes3Dimport matplotlib.pyplot as pltimport pandas as pdimport numpy as np# 生成随机数据def generateData2()...原创 2020-02-05 13:13:48 · 1138 阅读 · 1 评论 -
一元线性回归打印R方(决定系数)以及MSE(均方差)和残差分析图的Python示例代码
注意,本例是围绕OLS回归模型展开的,LAD回归模型没有打印R方和MSE。输出示例如下:拟合曲线、残差分析图输出的R方值(0.8701440026304358)和MSE值(4.45430204758885)还有LAD模型的参数(一个2乘1的矩阵),如图# pandas库相关,用于读取csv文件import pandas as pd# statsmodels库相...原创 2020-02-05 09:06:56 · 6824 阅读 · 0 评论 -
逻辑回归可视化——绘制决策边界
具体代码如下,现在的代码是基于之前的逻辑回归Sigmoid函数的得到的结果最优参数,这是之前博客的地址:https://blog.youkuaiyun.com/qq_41938259/article/details/104139237使用的数据集也在这个链接里给出了,以下附上代码,代码使用了psutil来显示实时的内存使用率,和3百万次迭代的for循环的运算时间。import osimport...原创 2020-02-04 00:03:41 · 3967 阅读 · 0 评论 -
逻辑回归以及Python代码实现
逻辑回归即是sigmoid函数,关于逻辑回归以及sigmoid函数的推导这位博主讲的很清楚了:https://www.cnblogs.com/hum0ro/p/9652674.html下面给出具体代码。数据集可以去我的下载那里下载。https://download.youkuaiyun.com/download/qq_41938259/12129611import osimport pan...原创 2020-02-01 22:29:15 · 1881 阅读 · 0 评论 -
python进制转换问题“输入十进制整数和欲转换的进制数r,将十进制转换为r进制数(r>=2)”
“输入十进制整数和欲转换的进制数r,将十进制转换为r进制数(r>=2)”这是学校的python课的第七次上机题,我们这一届是第一届开python课的。可以看出老师也是下了功夫的,基本上网上找不到一样的题目。简而言之,就是输入两个数字。第一个是十进制整数,第二个是要转换成的进制。主要问题是2到10进制是不带字母的,而10以上的进制都含有字母,所以得分类讨论。还有就是十进制转Q进制的...原创 2019-10-31 13:05:13 · 6986 阅读 · 0 评论 -
RSA加密法python实现
首先,公钥私钥生成文件代码在这儿:https://blog.youkuaiyun.com/qq_41938259/article/details/86765012这是加密前的原a文:As God as my witness...as god as my witness they’re not going to lick me.I’m going to live throughthis and when i...原创 2019-02-08 08:31:38 · 1304 阅读 · 0 评论 -
五彩泡泡。 使用turtle库与随机数函数库random绘制五彩泡泡,效果如下:
这个要求的代码就放在下面了:import turtle as timport random as radef drawCircle(): t.hideturtle() t.speed(100) for i in range(100): ...原创 2019-10-09 16:01:51 · 3556 阅读 · 7 评论 -
Django实战(1)——网站发布(实现同一广播域内的内网访问,以一个投票网站为例)
数据库默认情况下,配置的数据库是 SQLite,这里使用的就是这个默认的内嵌数据库,不需要另外设置。当然也可以使用mysql之类其他的数据库,具体操作见:https://django-intro-zh.readthedocs.io/zh_CN/latest/part2/#_1创建模型使用额外的元数据来定义你的模型 —— 本质上是你的数据库布局。编辑 polls/models.py 文件:...原创 2019-07-20 11:36:04 · 934 阅读 · 3 评论 -
Python模拟账号创建以及登陆
先给出如下所示代码:db={}def newuser(): prompt='login desired:' while True: name=input(prompt) if name in db: prompt='name taken,try another:' continue ...原创 2019-01-15 21:26:11 · 574 阅读 · 0 评论 -
Django实战(6)——学生作业批改系统demo2(用Textfield实现作业发布)/软件工程方法学大作业
上一篇文章(https://blog.youkuaiyun.com/qq_41938259/article/details/100603248)实现了学生上传作业,教师作业打分,学生查看分数。还缺少一个作业发布的功能,在同学的提醒下我才发现了这个要求忘记做了,所以才现在抽空搞完。这里是我上传到Github上的,这个项目的全部代码的地址:https://github.com/timTianWSRF/stud...原创 2019-10-05 01:32:29 · 1569 阅读 · 0 评论 -
python文件读取/写入练习以及使用pandas进行简单的求平均值操作
声明:这是原创,本人学号:170310441 为防止作业雷同产生不必要的纠纷这个其实是学校的一个作业,具体要求如下图:首先并没有给出学生的成绩数据,所以我想了一会决定用random函数来生成1至100的随机数字作为成绩,这个文件命名为randomrandom.py。代码如下:import randomimport csvfile = open('number.tx...原创 2019-09-19 14:40:10 · 5700 阅读 · 2 评论 -
Python区块链综述(postman交互演示)
上回已经给出了简单区块链的python代码,现在则来演示一下postman交互的操作过程。首先打开powershell 。键入“cd 文件所在地址链接名”。回车,再键入“python 文件名”。我这里的文件名定为了try.py如下图,一个区块链就以”服务器/客户端“的模式开始运行了,这里这台计算机既当服务器又当客户端,powershell这边是服务器端,postman则是客户端,支持多端接...原创 2019-03-08 12:05:44 · 681 阅读 · 0 评论 -
python创建tcp服务器和客户端
写在前面:关于socket模块函数详细地址https://blog.youkuaiyun.com/farley119/article/details/82414207创建一个tcp服务器:from socket import *from time import ctimeHOST=''#host变量为空表示bind()函数可以绑定在所有有效地址上PORT=571BUFSIZE=1024#缓...原创 2019-02-11 08:16:09 · 596 阅读 · 0 评论 -
Python拉宾米勒(判断素数)
这里引用了另一位博主对拉宾米勒算法的字面介绍:米勒-拉宾算法:快速判断一个数是不是素数需要用到的定理:最小费马定理:如果n是素数,则(a ^ (n - 1)) % n恒等于1。快速模取幂米勒-拉宾算法就是结合上面两种,通过不断判断fmod(a, n - 1, n)的值是否为1来判断。这是一个概率算法,如果为1,不一定为素数,不为1,则必定是合数。循环判断多次就会让概率变得极为的小。-...原创 2019-01-30 09:17:53 · 1969 阅读 · 0 评论 -
Python密码学__RSA公钥和私钥的生成
RSA体系的密钥由两个数字组成,大概共三个步骤:1)创建两个非常大的随机质数:q和p,相乘后得到n2)创建一个随机质数e,它与(q-1)*(p-1)互质3)计算e的逆模得到d以下给出程序和详细注释:import random,sys,os,cryptomathimport rabinMillerdef main(): print('生成密钥对.....') ...原创 2019-02-05 10:35:08 · 1905 阅读 · 3 评论 -
Python匿名函数lambda和函数式编程简析
匿名函数不会在任何空间里创建名字,故可以节省大量开销。这是匿名函数lambda的使用示例:a=lambda x,y=2:x+y是这样调用它的:a(3)a(3,5)分别输出5(3+2)和8(3+5)接下来是内建函数filter(),map(),reduce()分别用于过滤,映射,迭guolvqi代。1)filter()过滤器源代码大致如此: def ...原创 2019-02-03 14:23:01 · 254 阅读 · 0 评论 -
验证tesseract与tesserocr时报错,和解决方案
报错内容:Traceback (most recent call last): File "<stdin>", line 1, in <module> File "tesserocr.pyx", line 2443, in tesserocr._tesserocr.image_to_textRuntimeError: Failed to init API, po...原创 2019-01-26 16:24:45 · 1121 阅读 · 0 评论 -
Python的psutil模块的基本用途
#/usr/local/env python#coding:utf8import psutil,datetime#获取CPU完整信息cputimes = psutil.cpu_times(percpu=True)print cputimes##获取CPU个数,logical=False不用该参数选项则默认为True,获取逻辑个数cpucount = psutil.cpu_count...转载 2018-12-30 09:35:56 · 417 阅读 · 0 评论 -
Python检查标识符是否合法
所谓的合法标识符是:以字母,下划线开头;全部则是由字母,数字,下划线组成。程序不难,注释如下:import string#注:python2中的string成员letters在python3中改为了ascii_lettersalphas=string.ascii_letters+'_'nums=string.digitsprint('合法标识符检查。。。')print('测...原创 2019-01-08 11:35:50 · 7247 阅读 · 0 评论 -
python核心编程第二版(p161至162第6-12题)
a)没啥好说b)创建一个名字为rfindchr()的函数,查找字符最后一次出现的位置。mystring=input('Enter srting:')c=input('Enter char')#s是myatring的逆序s=mystring[::-1]for i,j in enumerate(s): if j==c: print(len(mystring)-...原创 2019-01-18 10:31:14 · 234 阅读 · 0 评论 -
区块链Python初试
在此基础上稍作修改:https://www.cnblogs.com/kidney/p/7627145.html使用了psutil模块查看运行时的硬件数据。以下是第一次尝试的代码:import hashlibimport jsonfrom time import timefrom urllib.parse import urlparsefrom uuid import uuid...原创 2019-01-12 21:06:02 · 340 阅读 · 1 评论 -
数据结构__Python实现队列和栈
注:以栈为例,因为队列只要修改popit()函数处代码,和修改相关提示语句即可。#Python的栈定义与计基本操作#队列只是改下提示语句和popit()函数stack=[]def pushit(): stack.append(input('输入新的元素并入栈:').strip())#若是队列只要将第14行改为repr(stack.pop[0])即可def popit(...原创 2019-01-11 14:16:24 · 237 阅读 · 0 评论 -
python区块链使用requests库进行post和get交互
上回已经给出了简单python区块链postman交互代码,现在则来演示一下使用requests库的交互操作过程。首先打开powershell 。键入“cd 文件所在地址链接名”。回车,再键入“python 文件名”。我这里的文件名定为了try.py首先import入requests库。。。。import requests然后第一步是mine操作,采用get方法,以下给出代码...原创 2019-03-27 16:52:06 · 352 阅读 · 0 评论 -
python爬取excel并用正则表达式将utf-8转化为数字
这次数学建模的题目是要分析两张表格,当然数学建模不是重点,本篇博文的重点是如何从两张excel里爬取数据并加以分析的过程,首先便是爬虫。我们要爬取两张表格里的数据,这次用到了pandas模块。pip install pandaspip install xrld有人会疑惑:“第二行是什么意思呢?”因为爬虫只能爬取老的office excel,即以xls为后缀的文件。而现在的新的off...原创 2019-07-02 23:12:39 · 1359 阅读 · 0 评论