Python

Python 命令行之旅:使用 argparse 实现 git 命令

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认

系统 2019-09-27 17:52:35 1969

Python

python 多线程对post请求服务器测试并发的方法

如下所示:#-*-coding:utf-8-*-importrequestsimportthreadingimporttimeclasspostrequests():def__init__(self):self.url='请求网址'self.files={'unknown_image':open('刘诗诗.jpg','rb')}defpost(self):try:r=requests.post(self.url,files=self.files)print

系统 2019-09-27 17:52:33 1969

Python

Python语法分析之字符串格式化

前序Thereshouldbeone-andpreferablyonlyone-obviouswaytodoit.――――theZenofPython意译:Python提倡用一种,而且最好是只有一种方法来完成一件事虽然Python有以上的提倡,但却在字符串格式化方面,没有做到这一点。字符串格式化敲黑板,划重点:在Python中有至少三种常见方式实现字符串格式化:%-formatting格式(Python2.6以前,推荐输出时使用)str.format()格

系统 2019-09-27 17:52:21 1969

Python

Python进阶之路 3.4.5 断言

3.4.5断言断言(assertions)的使用方式类似于if语句,只是在不满足条件时,会直接抛出异常。类似于下面的if语句(伪代码)ifnotcondition:#如果不满足条件,会直接抛出异常,程序会中断crashprogram那么究竟为什么需要这样的代码呢?主要原因为需要检测程序在某个地方是否满足条件,如果不满足条件,应该及时通知开发人员,而不是将这些bug隐藏起来,知道关键的时候在崩溃。其实在TDD中经常使用断言,TDD会在程序发现异常时执行断言,

系统 2019-09-27 17:52:20 1969

Python

Python设计模式4--原型模式

原型模式,也是用于创建对象时的一种设计方法。主要应用场景是:每次初始化某个对象时,需要传递大量的参数,很不方便,此时,可以使用原型模式,在已经创建并初始化的对象基础上,可以快速而又方便创建新的不同对象。主要原理:使用深拷贝,复制一个已创建的对象,然后使用__dict__.update()方法更新已创建对象中的参数值方式创建新对象。背景知识:在python中的类中,__dict__是一个字典,保存了所有该类中的变量,函数等参数。#coding=utf-8im

系统 2019-09-27 17:52:15 1969

Python

Python实现抓取城市的PM2.5浓度和排名

主机环境:(Python2.7.9/Win8_64/bs4)利用BeautifulSoup4来抓取www.pm25.com上的PM2.5数据,之所以抓取这个网站,是因为上面有城市PM2.5浓度排名(其实真正的原因是,它是百度搜PM2.5出来的第一个网站!)程序里只对比了两个城市,所以多线程的速度提升并不是很明显,大家可以弄10个城市并开10个线程试试。最后吐槽一下:上海的空气质量怎么这么差!!!PM25.py复制代码代码如下:#!/usr/bin/envp

系统 2019-09-27 17:51:23 1969

Python

Python实现设置windows桌面壁纸代码分享

每天换一个壁纸,每天好心情。#-*-coding:UTF-8-*-from__future__importunicode_literalsimportImageimportdatetimeimportwin32gui,win32con,win32apiimportrefromHttpWrapperimportSendRequestStoreFolder="c:\\dayImage"defsetWallpaperFromBMP(imagepath):k=wi

系统 2019-09-27 17:51:14 1969

Python

《与孩子一起学编程》python自测题

测试题一、1、程序可以响应的两种事件分别是键盘事件和鼠标事件。2、处理事件的代码称为事件处理器3、Pygame使用KEYDOWN事件来检测按键是否按下。4、Pos属性会指出事件发生时鼠标所在的位置5、要为用户事件得到下一个可用的事件编号,可以使用pygame.NUMEVENTS。6、要创建一个定时器,可以使用pygame.time.set_timer()。7、要在Pygame窗口中显示文本,可以使用font对象。8、使用字体对象有3个步骤:创建一个字体对象

系统 2019-09-27 17:51:09 1969

Python

第十五章 使用PyQt进行Python图形界面程序开发

在基础知识部分的最后一章《第十三章Python基础篇结束章》的《第13.3节图形界面开发tkinter》简单介绍了Python内置图形界面标准库tkinter,当时特别强调tkinter没有图形开发的设计界面,使用复杂,且存在功能问题不推荐使用,将学习朋友推荐的PyQt。本章正式进入PyQt相关内容的学习,注意PyQt是GPL软件(GPL是GNUGeneralPublicLicense的缩写,是GNU通用公共授权非正式的中文翻译),不适合用于商用开发。但P

系统 2019-09-27 17:50:44 1969

Python

千万不要错过这几道Python面试题,Python面试题No16

第1题:python下多线程的限制以及多进程中传递参数的方式?python多线程有个全局解释器锁(globalinterpreterlock),简称GIL,这个GIL并不是python的特性,他是只在Cpython解释器里引入的一个概念,而在其他的语言编写的解释器里就没有这个GIL例如:Jython。这个锁的意思是任一时间只能有一个线程运用解释器,跟单cpu跑多个程序一个意思,我们都是轮着用的,这叫“并发”,不是“并行”。为什么会有GIL?多核CPU的出现

系统 2019-09-27 17:50:37 1969

Python

Python常用随机数与随机字符串方法实例

随机整数:复制代码代码如下:>>>importrandom>>>random.randint(0,99)21随机选取0到100间的偶数:复制代码代码如下:>>>importrandom>>>random.randrange(0,101,2)42随机浮点数:复制代码代码如下:>>>importrandom>>>random.random()0.85415370477785668>>>random.uniform(1,10)5.4221167969800881

系统 2019-09-27 17:50:23 1969

Python

python爬虫第11关 协程

协程是什么我们已经做过不少爬虫项目,不过我们爬取的数据都不算太大,如果我们想要爬取的是成千上万条的数据,那么就会遇到一个问题:因为程序是一行一行依次执行的缘故,要等待很久,我们才能拿到想要的数据。既然一个爬虫爬取大量数据要爬很久,那我们能不能让多个爬虫一起爬取?这样无疑能提高爬取的效率,就像一个人干不完的活儿,组个团队一起干,活一下被干完了。这是一个很好的思路——让多个爬虫帮我们干活。但具体怎么用Python实现这事呢?我们可以先别急着想怎么实现这件事,后

系统 2019-09-27 17:50:16 1969

Python

如何用Python搭建一个简单的推荐系统?

推荐系统的相关知识我们已在前文中提到,在这篇文章中,我们会介绍如何用Python来搭建一个简单的推荐系统。本文使用的数据集是MovieLens数据集,该数据集由明尼苏达大学的Grouplens研究小组整理。它包含1,10和2亿个评级。Movielens还有一个网站,我们可以注册,撰写评论并获得电影推荐。接下来我们就开始实战演练。在这篇文章中,我们会使用Movielens构建一个基于item的简易的推荐系统。在开始前,第一件事就是导入pandas和numPy

系统 2019-09-27 17:50:15 1969

Python

Python with用法实例

python中with可以明显改进代码友好度,比如:复制代码代码如下:withopen('a.txt')asf:printf.readlines()为了我们自己的类也可以使用with,只要给这个类增加两个函数__enter__,__exit__即可:复制代码代码如下:>>>classA:def__enter__(self):print'inenter'def__exit__(self,e_t,e_v,t_b):print'inexit'>>>withA()

系统 2019-09-27 17:49:50 1969

Python

猜数字游戏_Python

预先设置数字变量age_of_test=25#这里设置为25,也可随意guess_age=int(input("guessage:"))ifguess_age==age_of_test:print("Yes,yougotit!")#判断正确后打印Yes,yougotit!并继续执行命令elifguess_age>age_of_test:print("thinksmaller...")#判断数字小于预定值时提示!else:print("thinkbigger

系统 2019-09-27 17:49:37 1969