研习python学以致用(Ⅱ)

学python好像也有好几个月的时间了,陆陆续续便放弃边学也有很长时间,放弃的原因也是因为没有合适的输出环境和好的输出方式,从而产生了学一阵子之后苦恼没有成效而面对没有体系的学习感觉迷茫;“学这东西有啥用,不就是别人用工具做一做就能出来的结果?”而我学python想要达到这种结果需要掌握好多库,需要掌握整个原理和流程…

用python生成二维码并风格化

介绍下用python生成二维码和风格二维码的功能,用简单几行代码实现自定义的动态二维码,我们利用“MyQr”库来完成这个操作;

如果没有安装,那么就需要安装:pip install MyQR       (需要在命令行中操作)

整体的实现思路是:

  • 先准备一张gif图(用ps生成即可);
  • 调用MyQr库,添加图片参数
"""生成带背景图片的二维码"""
 myqr.run(words='https://www.baidu.com/',
          picture=r'./00.gif',
          colorized=True,
          # True:彩色,False:黑白 默认False
          save_name='./02.png',
          )
参数 含义 详细
words 二维码指向链接 str,输入链接或者句子作为参数
version 边长 int,控制边长,范围是1到40,数字越大边长越大,默认边长是取决于你输入的信息的长度和使用的纠错等级
level 纠错等级 str,控制纠错水平,范围是L、M、Q、H,从左到右依次升高,默认纠错等级为’H’
picture 结合图片 str,将QR二维码图像与一张同目录下的图片相结合,产生一张黑白图片
colorized 颜色 bool,使产生的图片由黑白变为彩色的
contrast 对比度 float,调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
brightness 亮度 float,调节图片的亮度,其余用法和取值与 contrast 相同
save_name 输出文件名 str,默认输出文件名是”qrcode.png”
save_dir 存储位置 str,默认存储位置是当前目录
from MyQR import myqr


"""生成一个二维码"""
myqr.run(words='http://platv3.lkkids.com/#/login',
         save_name='./01.jpg',
         )


"""生成带背景图片的二维码"""
myqr.run(words='https://www.baidu.com/',
         picture=r'./01.jpg',
         colorized=True,
         # True:彩色,False:黑白
         save_name='./444.png',
         )


"""生成动态图二维码"""
myqr.run(words='https://u.wechat.com/MMa5nSjKNzZlxy0d8UUs4ww',
         picture=r'./00.gif',
         colorized=True,
         # True:彩色,False:黑白
         save_name='./01.gif',)

同时微信的个人二维码也是能被反解出来后利用背景动图生成二维码,效果如图;

————个人微信,欢迎长按识别添加交流————
—长按图片识别二维码—

遍历文档中的字/词语,并整理其字频和词频

实现思路:

1、用open()打开文档,并读取文档内容;

 ss = open("./wenben.txt","r", encoding='UTF-8').read()

2、如果要找到字频则对文字进行拆分(或对词语进行拆分),计算文字/词语出现的次数;


 # 遍历所有的字,并整理其每一个字的字频
 aa ={}
 for i in ss:
    aa[i] = aa.get(i,0) + 1
 aa = pd.Series(aa)


 # 对文档分词并进行拆分
 cc = jieba.lcut(ss,cut_all=True)
 # print(cc)
 ff = {}
 for i in cc:
    ff[i] = ff.get(i,0) + 1
 ff = pd.Series(ff)

3、删除标点符号的统计;

 bb = bb.drop([',',"。",'”','“',':','?','\n','、'," ","!",";"])

4、根据词频数量进行排序;

 bb = aa.sort_values(ascending=False)

5、展示排序字典


 print(bb)
 print(bb[:9])

完整代码

 import pyecharts,jieba,random
 import pandas as pd

 ss = open("./wenben.txt","r", encoding='UTF-8').read()
 '''
 # 遍历所有的字,并整理其每一个字的字频
 aa ={}
 for i in ss:
    aa[i] = aa.get(i,0) + 1
 aa = pd.Series(aa)
 # print(aa)
 bb = aa.sort_values(ascending=False)
 bb = bb.drop([',',"。",'”','“',':','?','\n','、'," ","!",";"])
 # print(bb)
 # print(bb[:9])
 '''


 # 用jieba作词,遍历所有的词,并整理其每一个词的字频
 cc = jieba.lcut(ss,cut_all=True)
 # print(cc)
 ff = {}
 for i in cc:
     ff[i] = ff.get(i,0) + 1
 ff = pd.Series(ff)
 ff = ff.sort_values(ascending = False)
 ff = ff.drop([',',"。",'”','“',':','?','\n','、'," ","!",";"," "])
 print(ff[2:52])

利用python实现DataFarme的透视图

利用python实现DataFarme的透视图


 import numpy as np
 import pandas as pd

 aa = pd.DataFrame(np.random.randn(9*9,78))
 print(aa)

透视图工具需要用到 pivot_ui

pip install pivottablejs

安装需运行上命令行

 from pivottablejs import pivot_ui
 pivot_ui(aa)

顺带安利一个好的简单分析方法

 aa.describe()
# 对数据进行全面的描述,一般的常用信息都可以在里面找到了

© 版权声明
THE END
喜欢就支持一下吧
点赞41
分享
相关推荐
  • 暂无相关文章
  • 评论 抢沙发