前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在Python中10行代码可以执行哪些高端操作?

在Python中10行代码可以执行哪些高端操作?

作者头像
用户2966292
发布2020-04-26 22:19:21
1.8K0
发布2020-04-26 22:19:21
举报
文章被收录于专栏:CoXie带你学编程CoXie带你学编程

前言

Python以其简单的代码赢得了许多开发人员的青睐。为了促进开发人员用Python开发新的模块,从而形成良性循环,Python可以用短代码实现许多有趣的操作。让我们看看在不超过10行的代码中可以实现哪些有趣的特性。

最主要还是要练习,不要告诉我你不会手动敲一遍代码!!!!!

一、生成二维码 二维码作为一种信息传输工具,在当今社会发挥着重要的作用。生成二维码非常简单。在Python中,我们可以通过myqr模块生成QR码。要生成二维码,我们需要两行代码。我们安装myqr模块,从国内下载:

代码语言:javascript
复制
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ myqr

安装后,我们可以开始编写代码:

代码语言:javascript
复制
from MyQR import myqr    # 注意大小写
myqr.run(words='http://www.baidu.com')    # 如果为网站则会自动跳转,文本直接显示,不支持中文

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

代码语言:javascript
复制
from MyQR import myqr
myqr.run(
    words='http://www.baidu.com',    # 包含信息
    picture='lbxx.jpg',            # 背景图片
    colorized=True,            # 是否有颜色,如果为False则为黑白
    save_name='code.png'    # 输出文件名

效果图如下:

可以试着扫描一下二维码

另外MyQR还支持动态图片。

二、生成词云 Word cloud是一种很好的数据可视化方法。我们可以通过word cloud直接看到一些单词的频率。使用python,我们通过word cloud模块生成wordcloud。我们安装wordcloud模块:

代码语言:javascript
复制
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ wordcloud

然后我们就可以写代码了:

代码语言:javascript
复制
from wordcloud import WordCloud
wc = WordCloud()    # 创建词云对象
wc.generate('Do not go gentle into that good night')    # 生成词云
wc.to_file('wc.png')    # 保存词云

执行代码后,生成以下单词cloud

这是最简单的单词cloud。关于word cloud的详细操作,请参考wordcloud生成Kakashi忍者wordcloud

三、批量抠图 处理图片的实现需要百度PADLAPADLE的深度学习工具PADLDLADLE的帮助。我们需要安装两个模块来快速实现批量消光,第一个模块是PaddlePaddle

代码语言:javascript
复制
python -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

还有一个是paddlehub模型库:

代码语言:javascript
复制
pip install -i https://mirror.baidu.com/pypi/simple paddlehub

更详细的安装事项可以参见paddlehub官网:https://www.paddlepaddle.org.cn/

接下来,我们需要5行代码来实现批量处理图片:。

代码语言:javascript
复制
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面前,自然语言处理也变得非常简单我们还需要安装PaddlePaddlePaddlehub来实现文本情感识别。具体安装见三节。这是我们的代码部分:

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

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

代码语言:javascript
复制
{'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}

情感关键域包含情感信息。详细分析请参考Python自然语言处理只需要5行代码。

五、识别是否带了口罩 这也是使用PaddlePaddle的产品。在我们根据上面的步骤安装PaddlePaddlePaddlehub之后,我们将开始编写代码:

代码语言:javascript
复制
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)

执行上述步骤后,将在项目下生成检测结果文件夹,并将识别结果放入其中。识别效果如下:

六、简易信息轰炸 Python有很多方法来控制输入设备。我们可以使用Win32pynput模块。通过简单的循环操作,可以达到信息轰炸的效果。在这里,例如pynput,我们需要先安装模块:

代码语言:javascript
复制
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pynput

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

代码语言:javascript
复制
from pynput import mouse
# 创建一个鼠标
m_mouse = mouse.Controller()
# 输出鼠标位置
print(m_mouse.position)

可能会有更加有效的方法,我不会。

在得到坐标后,我们可以记录下来。消息窗口不移动。我们执行以下代码窗口以切换到消息页:

代码语言:javascript
复制
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)    # 按下enter
    m_keyboard.release(keyboard.Key.enter)    # 松开enter
    time.sleep(0.5)    # 等待 0.5秒

我承认,这是10多行代码,并不是太高端。使用前,QQ向测试QQ发送信息的效果如下:

七、识别图片中的文字 我们可以使用Tesseract来识别图片中的文本。用Python实现非常简单。在早期阶段,下载文件和配置环境变量有点麻烦。本文仅显示代码:

代码语言:javascript
复制
import pytesseract
from PIL import Image
img = Image.open('text.jpg')
text = pytesseract.image_to_string(img)
print(text)

其中文本是可识别的文本。如果你对准确性不满意,可以使用百度的通用文本界面。

八、绘制函数图像 图标是数据可视化的重要工具。Matplotlib在Python中的数据可视化中起着重要的作用。让我们看看如何使用Matplotlib绘制函数图像

代码语言:javascript
复制
import numpy as np 
from matplotlib import pyplot as plt 

x = np.arange(1,11)     # x轴数据
y =  x * x +  5         # 函数关系
plt.title("y=x*x+5")     # 图像标题
plt.xlabel("x")     # x轴标签
plt.ylabel("y")     # y轴标签
plt.plot(x,y)     # 生成图像
plt.show()    # 显示图像

生成图像如下:

九、人工智能 以下是唯一的简易人工智能,一般不向外透露。这种简易人工智能可以回答许多问题。人工智能目前正处于发展阶段,对人类语言的理解存在许多差异。不用多说废话,让我们看看我们的人工智能FDJ

代码语言:javascript
复制
while(True):
    question = input()
    answer = question.replace('吗', '呢')
    answer = answer.replace('?', '!')
    print(answer)

让我们来看一个简单的测试:

你好吗? 我好呢! 你吃饭了吗? 我吃饭了呢! 你要睡了吗? 我要睡了呢!

后言

今日分享到这里就结束了。代码要多练,可以试着对着代码进行敲一遍。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python不等式 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档