Python用不超过10行代码能实现些什么有趣的功能
Posted 馒头糕饼一齐要
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python用不超过10行代码能实现些什么有趣的功能相关的知识,希望对你有一定的参考价值。
描述
Python 凭借语法的易学性,代码的简洁性以及类库的丰富性,赢得了众多开发者的喜爱。因此也促使了很多开发者使用Python开发新的模块,从而形成了良性循环。Python可以凭借更加简洁的代码实现非常多有趣的操作,下面我们来看看,用不超过10行代码能实现些什么有趣的功能
一、生成动图
在很多时候,尤其是在线聊天时,输了什么也不能输掉斗图啊,下面的代码可以快速生成动图,在和朋友的斗图当中,得胜的把握又增加了,接下来我们看一下代码实现
import imageio
image_list = ['D:\\/code\\/gropImage\\/image\\/1.jpg','D:\\/code\\/gropImage\\/image\\/2.jpg', 'D:\\/code\\/gropImage\\/image\\/3.jpg', 'D:\\/code\\/gropImage\\/image\\/4.jpg']
gif_name = "dongtu.gif"
duration = 1
frames = []
for image_name in image_list:
frames.append(imageio.imread(image_name))
imageio.mimsave(gif_name, frames, "GIF", duration=duration)
二、生成二维码
二维码在我们生活中十分常见,在我们的生活当中实在时太重要了,收付款、快速进入网站,访问各种统计信息等等,那么使用Python怎么去实现一个二维码的功能呢?只需要使用这五行代码,便可以实现一个简单的二维码功能,接下来我们看一下代码实现
import qrcode
text=input(输入文字/url)
image=qrcode.make(text)
img.save()
img.show()
三、批量抠图
在工作中经常需要对图片的背景进行去除,批量抠图的实现需要借助百度飞桨 paddlepaddle 是百度开源的深度学习工具,其功能强大,基于该工具我们可以实现很既有趣又有用的功能,开始之前我们需要安装两个模块
pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
pip install paddlehub -i https://mirror.baidu.com/pypi/simple
批量获取指定目录下的图片,然后通过 paddlehub 训练好的模型进行批量抠图处理,接下来我们看一下代码实现
import os
import paddlehub as hub
humanseg = hub.Module(name='deeplabv3p_xception65_humanseg') # 加载模型
path = 'D:\\/code\\/gropImage\\/' # 文件目录
# 获取文件列表
files = [path + i for i in os.listdir(path)]
results = humanseg.segmentation(data='image': files) # 抠图
四、自然语言处理
飞浆同样有很强的自然语言处理能力,在处理文字情绪识别方面也非常突出,接下来我们看一下代码实现
import paddlehub as hub
senta_lstm = hub.Module(name='senta_lstm')
senta_lstm_text=["你真美","你真丑 ","我好难过识","我不开心","这个游戏好好玩","什么垃圾游戏"]
results=senta_lstm.classify(data='text':senta_lstm_text)
五、文字云
文本中数据出现频率较高的关键词在视觉上做突出的呈现,形成的关键词渲染类似于云一样的彩色图片,从而一眼就可以看到哪些关键词出现的次数比较多,接下来我们看一下代码实现
import matplotlib.pyplot as plt
from wordcloud import WordCloudimport jieba
text_from_file_with_apath = open('D:\\/code\\/gropImage\\/list.txt').rea()
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()
六、人脸识别
当今社会人脸识别可以说是随处可见,而在疫情肆虐的今天,口罩似乎也成为我们日常出现必备的条件,很多公司的门口增加了口罩识别的功能,飞浆工具也增加了口罩识别功能,接下来我们看一下代码实现
import paddlehub as hub
# 加载模型
module = hub.Module(name='pyramidbox_lite_mobile_mask')
# 图片列表
image_list = ['D:\\/code\\/gropImage\\/lian1.jpg']
# 获取图片字典
input_dict = 'image':image_list
# 检测是否带了口罩
module.face_detection(data=input_dict)
七、人脸关键点检测
人脸关键点检测是人脸识别和分析领域中的关键一步,它是诸如自动人脸识别、表情分析、三维人脸重建及三维动画等其它人脸相关问题的前提和突破口,接下来我们看一下代码实现
import paddlehub as hub
face_landmark = hub.Module(name="face_landmark_localization")
image = 'D:\\/code\\/gropImage\\/img_face.jpg'
result = face_landmark.keypoint_detection(images=[cv2.imread(image)],visualization=True)
print(result)
八、识别图片中的文字
识别图片中的文字,这个功能就是我们日常生活中经常使用到的OCR功能,它可以把图片中的文字进行识别。借助于专业库强大的功能实现OCR也只需要几行的代码,并实现了很多软件中付费的OCR功能是不是非常强大?,接下来我们看一下代码实现
import pytesseract
from PIL import Image
image=Image.open('D:\\/code\\/gropImage\\/img_text.jpg')
text=pytesseract.image_to_string(image)
print(text)
总结
Python是非常适合入门的编程语言,使用合适的教程便可以在短时间内掌握Python的知识,并通过编程完成很多工具所拥有的功能,好了,这就是今天分享的内容,如果喜欢,就点个赞吧~
以上是关于Python用不超过10行代码能实现些什么有趣的功能的主要内容,如果未能解决你的问题,请参考以下文章