Python-Jack
码龄3年
  • 206,942
    被访问
  • 377
    原创
  • 908,602
    排名
  • 741
    粉丝
关注
提问 私信

个人简介:任教于千锋Python教学部,毕业于四川大学,在攻读博士学位期间发表过多篇学术论文,其中1篇被SCI收录,3篇被EI收录,参与多项国家自然科学基金项目和省市科技攻关项目。长期使用C、C++和Java等编程语言进行开发,曾主持和参与过电子政务系统、KPI考核系统和P2P借贷平台的研发。2012年从事计算机教育培训工作以来,曾在个人博客上发表过关于Java企业级应用开发、移动客户端开发、企业架构研究、中间件开发等多个领域的内容文章,其访问量超过270万次。

  • 加入CSDN时间: 2019-02-28
博客简介:

qfluohao的博客

查看详细资料
个人成就
  • 获得350次点赞
  • 内容获得368次评论
  • 获得1,640次收藏
创作历程
  • 6篇
    2021年
  • 175篇
    2020年
  • 206篇
    2019年
成就勋章
TA的专栏
  • Python入门教程100天
    129篇
  • Python 100 Days
    24篇
兴趣领域 设置
  • 后端
    架构
  • PHP
    php
  • 服务器
    linux
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

用 pprint 代替 print 更友好的打印调试信息

用 pprint 代替 print 更友好的打印调试信息pprint 是 “pretty printer” 的简写,“pretty” 的含义是 “漂亮的、美观的”,因此 pprint 的含义便是:漂亮的打印。这是个相当简单却有用的模块,主要用于打印复杂的数据结构对象,例如多层嵌套的列表、元组和字典等。先看看 print() 打印的一个例子:mylist = ["Beautiful is better than ugly.", "Explicit is better than implici
原创
发布博客 2021.01.15 ·
110 阅读 ·
0 点赞 ·
0 评论

使用协程快速获得一个代理池

使用协程快速获得一个代理池前言在执行 I/O 密集型任务的时候,程序会因为等待 I/O 而阻塞。比如我们使用 requests 库来进行网络爬虫请求的话,如果网站响应速度过慢,程序会一直等待网站响应,最终导致其爬取效率十分低下。本文以爬取 IP 代理池为例,演示 Python 中如何利用异步协程来加速网络爬虫。协程协程(Coroutine),又称微线程,纤程,协程是一种用户态的轻量级线程。协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存,在调度回来的时候,恢复先前保
原创
发布博客 2021.01.15 ·
107 阅读 ·
0 点赞 ·
0 评论

爬虫到底违法吗?你离违法还有多远?

最近,国家依法查处了部分编写爬虫程序,盗取其他公司数据的不良企业。一时间风声鹤唳,关于爬虫程序是否违法的讨论遍布程序员圈子。那么到底编写爬虫程序是否违法呢?其爬虫下载数据,一般而言都不违法,因为爬虫爬取的数据同行也是网站上用户打开页面能够看到的数据,但是如果符合下列条件的网站进行强行数据采集时,会具有法律风险。采集的站点有声明禁止爬虫采集时。2. 网站通过Robots协议拒绝采集时。Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion
原创
发布博客 2021.01.15 ·
2965 阅读 ·
1 点赞 ·
0 评论

一个小例子助你彻底理解协程

一个小例子助你彻底理解协程协程,可能是Python中最让初学者困惑的知识点之一,它也是Python中实现并发编程的一种重要方式。Python中可以使用多线程和多进程来实现并发,这两种方式相对来说是大家比较熟悉的。事实上,还有一种实现并发的方式叫做异步编程,而协程就是实现异步编程的必要方式。所谓协程,可以简单的理解为多个相互协作的子程序。在同一个线程中,当一个子程序阻塞时,我们可以让程序马上从一个子程序切换到另一个子程序,从而避免CPU因程序阻塞而闲置,这样就可以提升CPU的利用率,相当于用一种协作的
原创
发布博客 2021.01.15 ·
70 阅读 ·
0 点赞 ·
0 评论

Python中格式化字符串更酷的方式

Python中格式化字符串更酷的方式在 Python 中,大家都习惯使用 %s 或 format 来格式化字符串,在 Python 3.6 中,有了一个新的选择 f-string。使用对比我们先来看下 Python 中已经存在的这几种格式化字符串的使用比较。# %susername = 'tom'action = 'payment'message = 'User %s has logged in and did an action %s.' % (username, action)
原创
发布博客 2021.01.15 ·
67 阅读 ·
0 点赞 ·
0 评论

教你用Python实现自动扫雷,你就是最亮的仔~

扫雷,相信80、90后的小伙伴肯定不陌生,在电脑还没有彻底普及的年代,能够玩上扫雷和纸牌就已经非常不容易了,今天小千就来给大家分享一期使用Python代码实现自动扫雷的教程,代码都在文章中,同学们可以学习和参考一下。自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式。一、准备工作我的版本是 python 3.6.1python的第三方库:win32api win32gui win32con Pillow num
转载
发布博客 2021.01.07 ·
157 阅读 ·
0 点赞 ·
0 评论

从零开始学Python - 第030课:用Python获取网络数据

对于Python语言来说,一个较为擅长的领域就是网络数据采集,实现网络数据采集的程序通常称之为网络爬虫或蜘蛛程序。即便是在大数据时代,数据对于中小企业来说仍然是硬伤和短板,有些数据需要通过开放或付费的数据接口来获得,其他的行业数据则必须要通过网络数据采集的方式来获得。不管使用哪种方式获取网络数据资源,Python语言都是非常好的选择,因为Python的标准库和三方库都对获取网络数据提供了良好的支持。HTTP和requests库要使用Python获取网络数据,我们可以先安装一个名为requests的.
转载
发布博客 2020.12.11 ·
111 阅读 ·
0 点赞 ·
0 评论

从零开始学Python - 第029课:用Python操作PDF文件

PDF是Portable Document Format的缩写,这类文件通常使用.pdf作为其扩展名。在日常开发工作中,最容易遇到的就是从PDF中读取文本内容以及用已有的内容生成PDF文档这两个任务。从PDF中提取文本在Python中,可以使用名为PyPDF2的三方库来读取PDF文件,可以使用下面的命令来安装它。pip install PyPDF2 -i https://pypi.doubanio.com/simplePyPDF2没有办法从PDF文档中提取图像、图表或其他媒体,但它可以提取
转载
发布博客 2020.12.11 ·
91 阅读 ·
0 点赞 ·
0 评论

从零开始学Python - 第028课:用Python读写Excel文件

Excel简介Excel是Microsoft(微软)为使用Windows和macOS操作系统开发的一款电子表格软件。Excel凭借其直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,一直以来都是最为流行的个人计算机数据处理软件。当然,Excel也有很多竞品,例如Google Sheets、LibreOffice Calc、Numbers等,这些竞品基本上也能够兼容Excel,至少能够读写较新版本的Excel文件,当然这些不是我们讨论的重点。掌握用Python程序操作Excel文件,可以让日常办
转载
发布博客 2020.12.11 ·
72 阅读 ·
0 点赞 ·
0 评论

从零开始学Python - 第031课:用Python解析HTML页面

在上一课中我们讲到了使用Python获取网络资源,如果我们获取到一个或多个页面,需要从页面中提取出指定的信息,首先得掌握解析HTML页面的技术。上一课中我们把整个HTML页面当成一个字符串,使用正则表达式的捕获组提取出了需要的内容。但是,写出一个正确的正则表达式经常也是一件让人头疼的事情。为此,我们可以先了解HTML页面的结构,在此基础上就可以掌握其他的解析HTML页面的方法。HTML页面的结构我们在浏览器中打开任意一个网站,然后通过鼠标右键菜单,选择“显示网页源代码”菜单项,就可以看到网页对应的H
转载
发布博客 2020.12.11 ·
148 阅读 ·
0 点赞 ·
0 评论

自动化测试十大你必备(背)的面试题

第一个就刷掉一大批人有很多“会自动化”的同学来咨询技术问题,他总会问到我一些元素定位的问题。元素定位其实都不算自动化面试的问题。一般我都会问:你是定位不到吗?通常结果都是说确实定位不到。做自动化,首先你得保证一点,没有你定位不到的元素,这个你才能做UI自动化。如果有些元素都定位不到,你说你拿什么去点?就好像你的手你的鼠标点不到需要的元素,就没法去操作。第一个,自动化分为UI自动化与接口自动化UI自动化又包括APP自动化、H5、小程序等接口自动化也包括很多,你用什么类型的工具做自动化?
原创
发布博客 2020.10.26 ·
405 阅读 ·
2 点赞 ·
0 评论

世界正在狠狠惩罚不愿改变的人

近日,日本零售巨头,无印良品(MUJI)美国子公司申请破产。作为行业中的翘楚,居然也快不行了,真的让人感叹世事难料。2006年无印良品进驻美国,至今在美国开了18家门店,光在纽约就开了9家,现在申请破产后全部关门。在过去3年里,无印良品一直处于亏损状态,至今负债超过6400万美元。到了今年终于顶不住压力,主动宣布申请破产保护了。曾经的巨头倒下,背后的原因,值得深思。美国作家约翰逊曾说:“这个世界上唯一不变的,就是变化本身。”今天的这篇文章,希望带给所有的...
原创
发布博客 2020.10.26 ·
266 阅读 ·
0 点赞 ·
0 评论

web基础教程:随笔

一、用自己的语言描述get、post、Accept、Referer、User-Agent、host、cookie、X_Forwarded_for、Location各请求头的含义1. GEThttp请求方法,从浏览器获取一个资源2. POST提交数据、账号密码等,加密传输3. Accept支持的语言程序、接收的文件类型等等…4. Referer起过渡作用,从一个页面转到另一个页面5. User-Agent显示浏览器的指纹信息6. host主机7. cookie记录并
原创
发布博客 2020.10.26 ·
45 阅读 ·
0 点赞 ·
0 评论

基于业务场景下的图片/文件上传方案总结

图片/文件上传组是企业项目开发中必不可少的环节之一, 但凡涉及到用户模块的都会有图片/文件上传需求, 在很多第三方组件库(ant desigin,element ui)中它也是基础组件之一. 接下来笔者就来带大家从零实现一款图片/文件上传组件以及扩展出更强大的上传组件.你将收获常用的图片上传功能实现方案 手写一个图片/文件上传组件 如何将裁剪功能集成到上传组件中 内容平台/可视化平台下的图片自治方案 如何扩展出更强大的图片上传方案正文作为一名前端工程师, 解决项目问题是我们的基本职责.
原创
发布博客 2020.10.26 ·
199 阅读 ·
0 点赞 ·
0 评论

React Ref 其实是这样的

ref 的由来在典型的 React 数据流中,props 是父组件与子组件交互的唯一方式。要修改一个子组件,你需要使用新的 props 来重新渲染它。但是,在某些情况下,你需要在典型数据流之外强制修改子组件/元素。适合使用 refs 的情况:管理焦点,文本选择或媒体播放。 触发强制动画。 集成第三方 DOM 库。ref 的四种方式在 React v16.3 之前,ref 通过字符串(string ref)或者回调函数(callback ref)的形式进行获取。ref 通过字符获取:
原创
发布博客 2020.10.26 ·
76 阅读 ·
0 点赞 ·
0 评论

几个例子理解不同数据类型的堆栈内存处理

js代码的运行环境浏览器 内核(引擎) node webview(hybrid,嵌入到手机app里面,在app里面运行) …下面通过几个例子理解不同数据类型的堆栈内存处理js如何运行(示例1)var a = 12;var b = a;b = 13;console.log(a);浏览器能够运行js代码,是因为浏览器会在计算机内存中分配出一块内存,用来供代码执行,这块内存叫栈内存,也叫Stack,或者ECStack(Execution Context Stack)执行环境栈。
原创
发布博客 2020.10.26 ·
85 阅读 ·
0 点赞 ·
0 评论

7个前端新手常见误区,千万要避开

越来越多的开发者加入前端开发队伍。但前端知识在不断更新着,大家对它的认识也各不相同,今天就为您解读,学习web前端都有哪七大误区。误区一:前端只是JavaScript但我要说的是:前端不只是JS。何谓前端开发?我认为,一切以展现为目标的工作,都是前端开发工作。在前端开发中,除了JS,还有很多需要去掌握的,比如浏览器原理,html5,css3等。之前在面试别人时,问他,怎么做一个触摸屏上的转盘。他摇头。我退了一步,和他说谈谈你的想法也可。他想了一下,还是不会。做转盘,看似简单,但代表了前端知识的综合应用
原创
发布博客 2020.10.26 ·
106 阅读 ·
0 点赞 ·
0 评论

排序算法入门:选择排序

选择排序选择排序也是利用了“挡板法”这个经典思想。挡板左边是已排序区间,右边是未排序区间,那么每次的“选择”是去找右边未排序区间的最小值,找到之后和挡板后面的第一个值换一下,然后再把挡板往右移动一位,保证排好序的这些元素在挡板的左边。比如例子:{5, 2, 0, 1}我们用一个挡板来分隔数组是否排好序,用指针 j 来寻找未排序区间的最小值;第一轮 j 最初指向 5,然后遍历整个未排序区间,最终指向 0,那么 0 就和挡板后的第一个元素换一下,也就是和 5 交换一下位置,挡板向.
转载
发布博客 2020.10.21 ·
53 阅读 ·
1 点赞 ·
1 评论

如何高效定义和验证restful请求的参数

go-zero针对文本的序列化和反序列化主要在三个地方使用:http api请求体的反序列化 http api返回体的序列化 配置文件的反序列化1. http api请求体的反序列化在反序列化的过程中的针对请求数据的数据格式以及数据校验需求,go-zero实现了自己的一套反序列化机制1.1 数据格式以订单order.api文件为例type ( createOrderReq struct { token string `path:"token"` // .
原创
发布博客 2020.10.21 ·
67 阅读 ·
0 点赞 ·
0 评论

如何使用 CatBoost 进行快速梯度提升

我们将仔细研究一个名为CatBoost的梯度增强库。在梯度提升中,预测是由一群弱学习者做出的。与为每个样本创建决策树的随机森林不同,在梯度增强中,树是一个接一个地创建的。模型中的先前树不会更改。前一棵树的结果用于改进下一棵树。在本文中,我们将仔细研究一个名为CatBoost的梯度增强库。CatBoost 是Yandex开发的深度方向梯度增强库 。它使用遗忘的决策树来生成平衡树。相同的功能用于对树的每个级别进行左右拆分。(CatBoost官方链接:https://github.
原创
发布博客 2020.10.21 ·
142 阅读 ·
0 点赞 ·
0 评论
加载更多