知识盛宴- 实训

第一天

Python简介

Python是优雅,简单,明确的语言,优雅体现在代码格式上;简单也是体现在了代码中

定义变量不需要声明类型,和你们所学的C和Java相比很容易

Python和C语言/Java相比较 是一门后兴起的语言,但是在用户使用时的好评和他们几乎是同一个级别的.python现在被广泛使用.在全球编程语言中python排行第三

python能够排行第三是因为他们以下几点优势

  • 高级语言
    • 我们只需要将我们的想法通过一个中语言介质(编程语言)告诉计算机,计算机去帮助我们实现,具体计算机做了什么事情完全不需要我们管,这样就大大的节省了学习的成本
  • 开发效率高
    • 开发效率高是因为怎么想要实现的功能,在很早直接就有人想到了,并且实现了以后还免费分享出来了,我们要实现的时候只需要把人家写的好拿过来用就行了,省去重复性的工作和时间.python有一句话说的很好懒惰即美德.
  • 可跨平台
    • 咱们常用的两种电脑一个是苹果一个是windows,苹果和windows他们之间平台就是不一样的,跨平台就是我现在在windows系统中写的代码,放到你的苹果电脑上完全可以运行,不想C和Java需要涉及到系统相关的内容
  • 简单易懂
    • 简单易懂是因为python就是对应着人的想法做出的语言,就说想要打印一个数字521,python中直接使用print就可以了

因为这些优势现在很多大小型公司都是使用python,小型公司通过python起家,因为要创建就要资金.当资金不够的时候就需要进行融资.融资的时候肯定要有成品让土豪们观看.使用python就能够快速的将项目实现,比如就说jd这个项目使用c和java需要一年多.但是使用pytho也就半年就搞定了.你们肯定觉得我在瞎说,咱们写一下就知道,在写之前我们需要安装点工具

环境安装

1548321576861

  • 下拉页面,选择对应版本:Python3.6.3,如下图

1548321627327

  • 向下查找,找到Python 3.6.3 根据系统选择对应的安装包,如下图

1548321725742

根据当前系统的选择对用的,红色的是windows32位,绿色的是windows64位

  • 下载完成,如下图

1548321901159

下载完成后找到下载的目录,然后用鼠标左键双击

1548322161259

  • 执行下一步

1548322484875

  • 勾选安装

1548322828889

  • 安装进度

1548322874729

  • 安装成功

1548322916218

OK,当看到这个页面的时候我们已经成功的安装上了,现在我们只需要安装一个辅助的开发工具,这个工具能够让我们开发效率提高很多倍 — 我发给大家!

项目介绍

工具都已经安装完成了,因为是第一天咱们就先来个开胃菜

搞一搞微信好友

为什么要搞微信好友:

咱们现在都是用微信在交流,以前时候老板和老板一见面就互相交换名片,当时我就老羡慕人家.我也想弄点名片装个B,实在太贵了只能看他们默默的装B,现在也不交换名片了都是互相加微信,慢慢的微信好友就多了.好友多就免不了要删除一些好友,但是我只想删除性别是男的微信好友,女的留一下 万一哪天偶遇了呢.

我就躺在床上看头像删除,删的删的发现有些特殊癖好的喜欢用女孩子做头像,我就只能删一个看看他的详细信息,这样下来太麻烦了.我就用程序写了一个获取微信中的男女朋友,再删除的时候就方便多了.删完以后就像要是有个图能显示就更完美了我就把图也加上了.咱们来看一下效果图

快速入门

叨逼叨半天也看了效果图,咱们就自动动手写一个试试

准备工作

  • 安装wxpy
    • pip install wxpy
  • 安装pyecharts
    • pip3 install pyecharts

安装完后我们使用 pip list查看一下

第一步

from wxpy import * 
bot = Bot()

这样就生成了一个微信二维码,我们用手机扫一下然后登陆,在程序中就显示当前登陆微信的昵称

第二步

from wxpy import *
from pyecharts import Pie
import webbrowser

将我们需要使用的模块导入,第一个模块是微信朋友,这个就是正对于微信的

第二个模块是一个图表的模块我们一会需要展示一个饼状图

第三个模块是一个浏览器模块,通过这个浏览器显示我们生成的饼状图

第三步

from wxpy import *
from pyecharts import Pie
import webbrowser

bot = Bot()
friends=bot.friends()    #拿到所有朋友对象
attr=['男朋友','女朋友','性别不详']
value=[0,0,0]
for friend in friends:
    if friend.sex == 1: # 等于1代表男性
        value[0]+=1
    elif friend.sex == 2: #等于2代表女性
        value[1]+=1
    else:
        value[2]+=1

pie = Pie("朋友男女比例")
pie.add("", attr, value, is_label_show=True)
pie.render('sex.html')#生成html页面
# 打开浏览器
webbrowser.open("sex.html")

大家都来试一试自己微信中是男性朋友多还是女性朋友多.

大家都试了没有问题的话,咱们就来看看咱们写的都是什么吧,为什么就要这样写我给大家一行一行的讲解一下

知识点

from  xx   import  a  是在导入模块

from 就是从xx这里将a导入的当前的这个文件中,*是导入所有

导入的就是咱们刚刚安装的模块

import webbrowser 也是导入模块

这个是从python中自带的导入

bot = Bot() # 这是实例化 也就是生成一个微信二维码
friends=bot.friends()  #获取我们登陆的微信号中所有的好友
attr = ['男朋友','女朋友','性别不详'] 

这个是因为我们要生成饼状图时,人家要求要写成这样的格式,这个样的格式你们见过吗?

在Java和C中 ['男朋友','女朋友','性别不详'] 这种结构叫做数据,python中叫做列表

列表就是一个容器,就是用来存放一些数据

列表就像是咱们的书包可以放一堆东西,列表中的男朋友是字符串类型,因为咱们直接写中文计算机是不认识得,计算机只认识用引号包起来的中文,列表中的男朋友就类似于我们书包中放的移动充,女朋友就类似于我们书包中的手机充电器,性别不详就类似于我们书包中的耳机

attr = ['男朋友','女朋友','性别不详'] 这样是定义一个变量,变量的名字叫做attr,值是列表

就类似于你把你的书包给你同桌拿,你要取书包的东西就先要找你的同桌,程序中也是这样要想取值就先找attr

value = [0,0,0]

这个是我们要生成饼状图时好友的数量,列表中一种3个0正好对应attr中的男朋友,女朋友,性别不详.

for friend in friends:
    if friend.sex == 1: # 等于1代表男性
        value[0]+=1
    elif friend.sex == 2: #等于2代表女性
        value[1]+=1
    else:
        value[2]+=1

这一堆我们先从for开始看

for 是一个循环,一个有条件的循环,5个人排好队从这个门近,我站在门口,进来的第一个人我让他喊一声1,再进来一个人我让他喊一声1,5个人都进来了.一共喊了5次1,通过这个就发现要喊几次取决于有多少人,我们用代码来实现一下5个人进门的场景

li = ['张三','李四','王二麻子','铁锤妹妹','棍哥']
for em in li:  #冒号是表示这行语句结束了
    print(1)     
  #print 这地方需要一个缩进,缩进的意思就是当有人从门口进来才让他喊1
这样的结果就是打印5次1 也就是喊了5声

如果门口没人,也就是列表中没有内容就不会有人喊1

li = []
for em in li:
  print(1)
这样的结果就是空,因为没人从这个门进,也就不会喊1

我们让他们都喊1,但是不知道是谁进来了啊,要是能够让他喊出自己的名字,我们就知道是谁从这个门中进来了是吧.

li = ['张三','李四','王二麻子','铁锤妹妹','棍哥']
for em in li:
  print('我是',em)
这样谁进门咱们就知道了

咱们获取的微信好友就是从这个门口排了一个大长队,我们现在让他们进来,并且告诉咱们他们自己的名字,怎么办

  1. 首先我们先看看排队的人(微信好友列表)
  2. 让每一个人进门
  3. 进门就喊自己的名字
friends=bot.friends()
print(friends)      #查看微信好友的列表
for em in friends:  #让排队的微信好友进门
  print('我是',em)   #每一个进门的喊出自己的名字

咱们继续把这个if研究一下

    if friend.sex == 1: # 等于1代表男性
        value[0]+=1
    elif friend.sex == 2: #等于2代表女性
        value[1]+=1
    else:
        value[2]+=1

if 翻译过来就是如果的意思,elif就是在如果.这个代码的意思就是

如果进门的人性别是男的,男的用数字1表示,就让男同胞在这个本上写一笔,不是男同胞的就在判断一下是不是女同胞,也就开始执行elif这个语句不是男同胞也不是女同胞就是只剩下性别不详了

if — elif — elif 这种需要多选一,有一个是真的其余就都不看了

if后边跟的是条件,当条件执行为真的时候对咱们写的value那个列表进行操作

这种操作你们应该没有见过,索引你们应该听说过,索引就是我不通过名字叫你,有可能会有重名的,我给你们每个人定一个编号,我在找人的时候就按照编码找,计算机排编号的时候是从0开始的,这个0就表示列表中第一个东西

找到后进行了一个加法操作,本来是0就表示男同胞的这个记录本上干干净净的,有个男同胞进来了然后在这个本上画了一笔现在看就是1笔,我们最好要通过这个本子统计一共有多少男同胞,女同胞和性别不详的也是一样

pie = Pie("朋友男女比例")
pie.add("", attr, value, is_label_show=True)
#图表名称str,属性名称list,属性所对应的值list,is_label_show是否显示标签
pie.render('sex.html')#生成html页面

这个是我们创建一个饼状图,饼状图的名字叫做比例图

pie.add就是给饼状图添加要展示的数据,is_labe_show是在饼状图中显示标签

pie.render('sex.html')

将我们创建的饼状图生成一个html文件

webbrowser.open('sex.html')

这是将我们生成的html页面使用浏览器打开.

到现在为止咱们的开胃菜也吃完了,明天咱们吃另一道开胃菜.我这次给你们准备了一个满汉全席(知识盛宴) 和大家说说咱们都要做什么

微信系列

  • 微信好友男女比例
  • 微信好友分布
  • 微信全部简单回复
  • 微信指定人回复
  • 微信指定群中某人回复
  • 微信自动回复
  • 每天定时给好友发暖心话
  • 微信头像拼图(待定)

爬虫系列

  • 爬取豆瓣Top250
  • 爬取斗图 — 再也不担心过没图可逗了
  • 爬取必应壁纸
  • 爬取汽车之家
  • 爬取拉钩
  • 爬取58
  • 爬取肯德基
  • 爬取药监局
  • 爬取喜马拉雅音乐
  • 爬取梨视频
  • 爬取小说
  • 破解验证码
  • 爬取QQ空间说说
  • 爬取12306
  • 爬取微博
  • 爬取段子

人工智能系列

  • 文字准换语音
  • 语音准换文字
  • 人脸识别
  • 语音输入明星名字爬取明星图片在网站上展示(有想法 — 未实现)
  • 语音输入要听得歌在网站上播放(有想法 —未实现 )

猜你喜欢

转载自www.cnblogs.com/guobaoyuan/p/10832031.html