如果高考考Python,这些题目你会做吗?

开发 后端
言归正传,相信大家都知道Python入选山东小学教材、浙江省信息高考的事儿,那么如果有一天Python正式进入高考,会有哪些题目?你又能不能做出来呢?

高考赠言

春去秋来又是一年高考季,首先让我们祝福即将踏入考场的莘莘学子,希望他们能考上理想的大学,虽然对有些人来说大学只是换个地方敲(da)代(you)码(xi),但还是祝愿他们能去好学校,毕竟网速快点。

言归正传,相信大家都知道Python入选山东小学教材、浙江省信息高考的事儿,那么如果有一天Python正式进入高考,会有哪些题目?你又能不能做出来呢?

那么今天就斗胆出一回题,请诸位高才作答——

1、送分题

完形填空:人生苦短,_______。

答案:我用Python

2、基础题

简答:这两个参数是什么意思:*args,**kwargs?我们为什么要使用它们?(某面试题)

答案:如果我们不确定要往函数中传入多少个参数,或者我们想往函数中以列表和元组的形式传参数时,那就使要用*args;如果我们不知道要往函数中传入多少个关键词参数,或者想传入字典的值作为关键词参数时,那就要使用**kwargs。args和kwargs这两个标识符是约定俗成的用法,你当然还可以用*bob和**billy,但是这样就并不太妥。

3、实操题

项目考核:如何用Python爬取《王者荣耀》皮肤图片?(新手爬虫实战案例)

答案:

以下是参考答案

首先进入所有英雄列表,你会看到下图

如果高考考Python,这些题目你会做吗?

在这个网页中包含了所有的英雄,头像及英雄名称。

♦单个英雄

点击其中一个英雄的头像,例如***个“百里守约”,进去后如下图:

如果高考考Python,这些题目你会做吗?
△网址为https://pvp.qq.com/web201605/herodetail/196.shtml

网址中196.shtml以前的字符都是不变的,变化的只是196.shtml。而196是“百里守约”这个英雄所对应的数字,要想爬取图片就应该进入每个英雄皮肤图片所在的网址,而所有英雄的网址的关键就是每个英雄对应的数字。那么这些数字怎么找呢?

♦英雄数字

在所有英雄列表中,打开浏览器的开发者工具,刷新,找到一个json格式的文件,如图所示:

如果高考考Python,这些题目你会做吗?

这时就会看到所有英雄对应的数字了。在上图所示的Headers中可以找到该json文件对应的网址形式。将其导入Python,把这些数字提取出来,然后模拟出所有英雄的网址即可

小节代码如下(Ubuntu(Linux)系统): 

  1. #爬取王者荣耀英雄图片 
  2. #导入所需模块 
  3.  
  4. import requests 
  5. import re 
  6. import os 
  7.  
  8. #导入json文件(里面有所有英雄的名字及数字) 
  9.  
  10. url='http://pvp.qq.com/web201605/js/herolist.json'  #英雄的名字json 
  11.  
  12. head={'User-Agent':'换成你自己的head'
  13. html = requests.get(url,headers = head) 
  14. html=requests.get(url) 
  15. html_json=html.json() 
  16.  
  17. #提取英雄名字和数字 
  18.  
  19. hero_name=list(map(lambda x:x['cname'],html_json)) #名字 
  20. hero_number=list(map(lambda x:x['ename'],html_json)) #数字 

♦下载图片

现在可以进入所有英雄的网址并爬取网址下的图片了。进入一个英雄的网址,打开开发者工具,在NetWork下刷新并找到英雄的皮肤图片(记住是大图)。如图所示:

如果高考考Python,这些题目你会做吗?

然后在Headers中查看该图片的网址。会发现皮肤图片是有规律的。我们可以用这样的方式来模拟图片网址:'http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/'+str(v)+'/'+str(v)+'-bigskin-'+str(u)+'.jpg',在该网址中只有str(v)与str(u)是改变的(str( )是Python中的一个函数),str(v)是英雄对应的数字,str(u)只是图片编号,例如***个图片就是1,第二个就是2,第三个……而一个英雄的皮肤应该不会超过12个(可以将这个值调到20等)。接着就是下载了。

下载的代码如下(有些地址要换成你自己的):  

下载的代码如下(有些地址要换成你自己的): 

如果高考考Python,这些题目你会做吗?

执行完上面的代码后只需要执行main函数就行了 

爬取下来的图片是这样,每个文件夹里面是该英雄对应的图片,如下图: 

如果高考考Python,这些题目你会做吗?

 


以上呢就是整理的几个Python考题了,不知道你会做几道呢?

 

责任编辑:未丽燕 来源: Python中文社区
相关推荐

2015-11-06 10:52:51

2015-11-06 09:39:52

2023-11-22 07:42:01

2023-06-06 08:16:19

高考考场通信网络

2015-04-28 10:57:28

javascriptjavascript题javascript题

2023-12-05 08:20:05

单例模式Python

2016-03-28 13:39:58

戴尔

2018-02-06 09:40:25

PythonOOP继承

2014-07-24 09:30:37

PythonPython 3

2015-06-15 15:41:56

高考考生特点

2019-12-30 09:28:53

Kafka集群ZooKeeper

2023-03-08 11:09:08

CIO企业

2022-05-11 09:04:50

Go函数数组

2023-12-07 08:13:58

Java开发

2020-10-28 11:20:55

vue项目技

2022-07-19 07:30:06

BigDecimal运算float

2020-07-01 07:41:22

Python加速代码

2013-06-21 15:01:16

编程开发

2013-11-20 14:14:35

2021-01-07 05:40:13

BLE模块Android
点赞
收藏

51CTO技术栈公众号