来源 | Python小二

Python凭借其简洁的代码,赢得了许多开发者的喜爱。因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环,Python可以凭借更加简短的代码实现许多有趣的操作。下面我们来看看,我们用不超过10行代码能实现些什么有趣的功能。

一、生成二维码

二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,而生成一个二维码也非常简单,在Python中我们可以通过MyQR模块了生成二维码,而生成一个二维码我们只需要2行代码,我们先安装MyQR模块,这里选用国内的源下载:

pip install qrcode

安装完成后我们就可以开始写代码了:

import qrcodetext = input(输入文字或URL:)
# 设置URL必须添加http://
img =qrcode.make(text)
img.save()
#保存图片至本地目录,可以设定路径
img.show()

我们执行代码后会在项目下生成一张二维码。当然我们还可以丰富二维码:
我们先安装MyQR模块

pip install  myqr
def gakki_code():version, level, qr_name = myqr.run(words=https://520mg.com/it/#/main/2,  # 可以是字符串,也可以是网址(前面要加http(s)://)version=1,  # 设置容错率为最高level='H',  # 控制纠错水平,范围是L、M、Q、H,从左到右依次升高picture=gakki.gif,  # 将二维码和图片合成colorized=True,  # 彩色二维码contrast=1.0, # 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0brightness=1.0,  # 用来调节图片的亮度,其余用法和取值同上save_name=gakki_code.gif,  # 保存文件的名字,格式可以是jpg,png,bmp,gifsave_dir=os.getcwd()  # 控制位置)gakki_code()

另外MyQR还支持动态图片。

二、生成词云

词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。

但是作为一个老码农,还是喜欢自己用代码生成自己的词云,复杂么?需要很长时间么?很多文字都介绍过各种的方法,但实际上只需要10行python代码即可。

先安装必要库

pip install wordcloud
pip install jieba
pip install matplotlib
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jiebatext_from_file_with_apath = open('/Users/hecom/23tips.txt').read()wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all = True)
wl_space_split =  .join(wordlist_after_jieba)my_wordcloud = WordCloud().generate(wl_space_split)plt.imshow(my_wordcloud)
plt.axis(off)
plt.show()

如此而已,生成的一个词云是这样的:

读一下这10行代码:

  1. 1~3 行,分别导入了画图的库matplotlib,词云生成库wordcloud 和 jieba的分词库;

  2. 4 行,是读取本地的文件,代码中使用的文本是本公众号中的《老曹眼中研发管理二三事》。

  3. 5~6 行,使用jieba进行分词,并对分词的结果以空格隔开;

  4. 7行,对分词后的文本生成词云;

  5. 8~10行,用pyplot展示词云图。

这是我喜欢python的一个原因吧,简洁明快。

三、批量抠图

抠图的实现需要借助百度飞桨的深度学习工具paddlepaddle,我们需要安装两个模块就可以很快的实现批量抠图了,第一个是PaddlePaddle:

python -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

还有一个是paddlehub模型库:

pip install -i https://mirror.baidu.com/pypi/simple paddlehub

接下来我们只需要5行代码就能实现批量抠图:

import os, paddlehub as hub
humanseg = hub.Module(name='deeplabv3p_xception65_humanseg')        # 加载模型
path = 'D:/CodeField/Workplace/PythonWorkplace/GrapImage/'    # 文件目录
files = [path + i for i in os.listdir(path)]    # 获取文件列表
results = humanseg.segmentation(data={'image':files})    # 抠图

四、文字情绪识别

在paddlepaddle面前,自然语言处理也变得非常简单。实现文字情绪识别我们同样需要安装PaddlePaddle和Paddlehub,具体安装参见中内容。然后就是我们的代码部分了:

import paddlehub as hub
senta = hub.Module(name='senta_lstm')        # 加载模型
sentence = [    # 准备要识别的语句'你真美', '你真丑', '我好难过', '我不开心', '这个游戏好好玩', '什么垃圾游戏',
]
results = senta.sentiment_classify(data={text:sentence})    # 情绪识别
# 输出识别结果
for result in results:print(result)

识别的结果是一个字典列表:

{'text': '你真美', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.9602, 'negative_probs': 0.0398}
{'text': '你真丑', 'sentiment_label': 0, 'sentiment_key': 'negative', 'positive_probs': 0.0033, 'negative_probs': 0.9967}
{'text': '我好难过', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.5324, 'negative_probs': 0.4676}
{'text': '我不开心', 'sentiment_label': 0, 'sentiment_key': 'negative', 'positive_probs': 0.1936, 'negative_probs': 0.8064}
{'text': '这个游戏好好玩', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.9933, 'negative_probs': 0.0067}
{'text': '什么垃圾游戏', 'sentiment_label': 0, 'sentiment_key': 'negative', 'positive_probs': 0.0108, 'negative_probs': 0.9892}

其中sentiment_key字段包含了情绪信息,详细分析可以参见Python自然语言处理只需要5行代码。

五、识别是否带了口罩

这里同样是使用PaddlePaddle的产品,我们按照上面步骤安装好PaddlePaddle和Paddlehub,然后就开始写代码:

import paddlehub as hub
# 加载模型
module = hub.Module(name='pyramidbox_lite_mobile_mask')
# 图片列表
image_list = ['face.jpg']
# 获取图片字典
input_dict = {'image':image_list}
# 检测是否带了口罩
module.face_detection(data=input_dict)

执行上述程序后,项目下会生成detection_result文件夹,识别结果都会在里面。

六、简易信息轰炸

Python控制输入设备的方式有很多种,我们可以通过win32或者pynput模块。我们可以通过简单的循环操作来达到信息轰炸的效果,这里以pynput为例,我们需要先安装模块:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pynput

在写代码之前我们需要手动获取输入框的坐标:

from pynput import mouse
# 创建一个鼠标
m_mouse = mouse.Controller()
# 输出鼠标位置
print(m_mouse.position)

可能有更高效的方法,但是我不会。

获取后我们就可以记录这个坐标,消息窗口不要移动。然后我们执行下列代码并将窗口切换至消息页面:

import time
from pynput import mouse, keyboard
time.sleep(5)
m_mouse = mouse.Controller()    # 创建一个鼠标
m_keyboard = keyboard.Controller()  # 创建一个键盘
m_mouse.position = (850, 670)       # 将鼠标移动到指定位置
m_mouse.click(mouse.Button.left) # 点击鼠标左键
while(True):m_keyboard.type('你好')        # 打字m_keyboard.press(keyboard.Key.enter)    # 按下enterm_keyboard.release(keyboard.Key.enter)    # 松开entertime.sleep(0.5)    # 等待 0.5秒

我承认,这个超过了10行代码,而且也不高端。

七、识别图片中的文字

我们可以通过Tesseract来识别图片中的文字,在Python中实现起来非常简单,但是前期下载文件、配置环境变量等稍微有些繁琐,所以本文只展示代码:

import pytesseract
from PIL import Image
img = Image.open('text.jpg')
text = pytesseract.image_to_string(img)
print(text)

其中text就是识别出来的文本。如果对准确率不满意的话,还可以使用百度的通用文字接口。

八、简单的小游戏

从一些小例子入门感觉效率很高。

import random
print(1-100数字猜谜游戏!)
num = random.randint(1,100)
guess =guessi = 0
while guess != num:i += 1guess = int(input(请输入你猜的数字:))if guess == num:print(恭喜,你猜对了!)elif guess < num:print(你猜的数小了...)else:print(你猜的数大了...)print(你总共猜了%d %i + 次)

猜数小案例当着练练手

技术

Python实现一个电影订票系统

技术

用Python实现十大经典排序算法

技术

快速实现Resnet残差模型实战

资讯

隐患:神经网络可以隐藏恶意软件

分享

点收藏

点点赞

点在看

10行 python 代码做出哪些酷炫的事情?相关推荐

  1. 10行python代码做出哪些酷炫的事情?

    大家好,我是辰哥~ Python凭借其简洁的代码,赢得了许多开发者的喜爱.因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环,Python可以凭借更加简短的代码实现许多有趣的操作.下 ...

  2. 10行python代码做出哪些酷炫的事情? 小白教程

    Python凭借其简洁的代码,赢得了许多开发者的喜爱.因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环,Python可以凭借更加简短的代码实现许多有趣的操作.下面我们来看看,我们用 ...

  3. 10行python代码可以做哪些酷炫的事情

    前言 今天玩啥?10行代码够玩吗? Python凭借其简洁的代码,赢得了许多开发者的喜爱.因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环, Python可以凭借更加简短的代码实现 ...

  4. 10 行 Python 代码能实现哪些有趣功能?

    大家好,我是菜鸟哥 Python凭借其简洁的代码,赢得了许多开发者的喜爱.因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环,Python可以凭借更加简短的代码实现许多有趣的操作.下 ...

  5. 获取clientheight为0_用10行python代码获取全国城市交通生活圈

    今天在网上冲浪看到一个很花哨的数据,全国各城市主要商圈从早上6点到晚上10点的20min,30min,45min,60min,90min生活圈轮廓. 1 获取思路 按下F12 按下F12,点击淮海路可 ...

  6. python自动化--如何用10行Python代码调一个闹钟 #电脑调闹钟

    python自动化--如何用10行Python代码写一个闹钟 前言: 文末彩蛋--轻松一刻 更多关于Python的知识请加关注哟~~.若需联系博主请私信或者加博主联系方式:       QQ:1542 ...

  7. 10行python代码的词云

    关于词云wordcloud 什么是词云呢?词云又叫文字云,是对文本数据中出现频率较高的"关键词"在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本 ...

  8. 4行python代码做出打字机效果

    4行python代码做出打字机效果 文章目录 4行python代码做出打字机效果 前言 一.导入库 二.完整代码 前言 今天想用python做一个打字机的效果出来看看! 一.导入库 import py ...

  9. python模拟别人说话的声音_如何用100行Python代码做出魔性声控游戏“八分音符酱”...

    最近几天,一款魔性的小游戏在微博上刷屏了,各大平台的主播也纷纷如感染病毒一样直播自己怎么玩这个游戏(被游戏玩). 这个游戏叫做<不要停!八分音符酱♪>.它是一款来自岛国的恶搞游戏,主角是一 ...

最新文章

  1. 【spring】使用spring的环境配置及从官网获得配置文件所用代码的方法
  2. 【12c新特性】12c中如何自动启动PDB Pluggable Database
  3. 360极速浏览器无法正确getHours
  4. 【今晚7点半】:六款开源LL-HLS/LL-DASH播放器评测
  5. CCIE-LAB-SDN-第六篇-SDWAN-Branch2-vEdge-51-vEdge-52
  6. 带UpdatePanel页面返回js问题
  7. 贷中风控调额方法与策略详解
  8. VALSE学习(十五):网络搜索结构-NAS
  9. 开机加电到系统打开究竟发生了什么?(1)
  10. html脚本怎么触发,在HTML中使用“onkeypress”触发视频,但是只有脚本中的最后一个代码会触发视频并且不确定为什么...
  11. java爬虫教程:模拟用户表单登录
  12. WPF中使用Chart控件
  13. php 微信 爬虫 源码,PHP实现微信开放平台扫码登录源码下载
  14. 卡诺模型案例分析_客户满意之卡诺模型
  15. android测试命令,Android Instrument测试命令使用小记
  16. c++ vector 用法总结
  17. UE4人物——导入多个动作流程笔记(从Mixamo)
  18. 网络摄像头RTSP直播方案(三)
  19. 网易我的世界服务器如何安组件,网易我的世界组件包怎么使用
  20. [作业]英语作业,无聊记事

热门文章

  1. 浅谈 javascript 中的this绑定问题
  2. Bzoj4016: [FJOI2014]最短路径树问题
  3. 机器学习 LR getA()
  4. 如何修改可运行Jar包,如何反编译Jar包
  5. Unsupported major.minor version (jdk版本错误)解决方案
  6. Rust语言开发基础(六)基础语法
  7. 解决js中数字相减为负数的情况
  8. python中的运算符举例_举例讲解Python中的身份运算符的使用方法
  9. 如何理解导远技术手册
  10. Rclone使用笔记