Python10行以内代码能有什么高端操作Python凭借其简洁的代码,赢得了许多开发者的喜爱。因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环,Python可以凭借更加简短的代码实现许多有趣的操作。下面我们来看看,我们用不超过10行代码能实现些什么有趣的功能。
一、生成二维码二维码作为一种信息传递的工具,在当今社会发挥了重要作用。而生成一个二维码也非常简单,在Python中我们可以通过MyQR模块了生成二维码,而生成一个二维码我们只需要2行代码,我们先安装MyQR模块,这里选用国内的源下载:
另外MyQR还支持动态图片。
二、生成词云词云是数据可视化的一种非常优美的方式,我们通过词云可以很直观的看出一些词语出现的频率高低。使用Python我们可以通过wordcloud模块生成词云,我们先安装wordcloud模块:
fromwordcloudimportWordCloudwc=WordCloud()#创建词云对象wc.generate('Donotgogentleintothatgoodnight')#生成词云wc.to_file('wc.png')#保存词云1234执行代码后生成如下词云:当然这只是最简单的词云,词云更详细的操作可以参见WordCloud生成卡卡西忍术词云。
三、批量抠图抠图的实现需要借助百度飞桨的深度学习工具paddlepaddle,我们需要安装两个模块就可以很快的实现批量抠图了,第一个是PaddlePaddle:
接下来我们只需要5行代码就能实现批量抠图:
importos,paddlehubashubhumanseg=hub.Module(name='deeplabv3p_xception65_humanseg')#加载模型path='D:/CodeField/Workplace/PythonWorkplace/GrapImage/'#文件目录files=[path+iforiinos.listdir(path)]#获取文件列表results=humanseg.segmentation(data={'image':files})#抠图12345抠图效果如下:
其中左边为原图,右边为抠图后填充黄色背景图。
四、文字情绪识别在paddlepaddle面前,自然语言处理也变得非常简单。实现文字情绪识别我们同样需要安装PaddlePaddle和Paddlehub,具体安装参见三中内容。然后就是我们的代码部分了:
importpaddlehubashubsenta=hub.Module(name='senta_lstm')#加载模型sentence=[#准备要识别的语句'你真美','你真丑','我好难过','我不开心','这个游戏好好玩','什么垃圾游戏',]results=senta.sentiment_classify(data={"text":sentence})#情绪识别#输出识别结果forresultinresults:print(result)123456789识别的结果是一个字典列表:
{'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}123456其中sentiment_key字段包含了情绪信息,详细分析可以参见Python自然语言处理只需要5行代码。
五、识别是否带了口罩这里同样是使用PaddlePaddle的产品,我们按照上面步骤安装好PaddlePaddle和Paddlehub,然后就开始写代码:
importpaddlehubashub#加载模型module=hub.Module(name='pyramidbox_lite_mobile_mask')#图片列表image_list=['face.jpg']#获取图片字典input_dict={'image':image_list}#检测是否带了口罩module.face_detection(data=input_dict)123456789执行上述程序后,项目下会生成detection_result文件夹,识别结果都会在里面,识别效果如下:
六、简易信息轰炸Python控制输入设备的方式有很多种,我们可以通过win32或者pynput模块。我们可以通过简单的循环操作来达到信息轰炸的效果,这里以pynput为例,我们需要先安装模块:
frompynputimportmouse#创建一个鼠标m_mouse=mouse.Controller()#输出鼠标位置print(m_mouse.position)12345可能有更高效的方法,但是我不会。
获取后我们就可以记录这个坐标,消息窗口不要移动。然后我们执行下列代码并将窗口切换至消息页面:
七、识别图片中的文字我们可以通过Tesseract来识别图片中的文字,在Python中实现起来非常简单,但是前期下载文件、配置环境变量等稍微有些繁琐,所以本文只展示代码:
importpytesseractfromPILimportImageimg=Image.open('text.jpg')text=pytesseract.image_to_string(img)print(text)12345其中text就是识别出来的文本。如果对准确率不满意的话,还可以使用百度的通用文字接口。
八、绘制函数图像图标是数据可视化的重要工具,在Python中matplotlib在数据可视化中发挥重要作用,下面我们来看看使用matplotlib如何绘制一个函数图像:
importnumpyasnpfrommatplotlibimportpyplotaspltx=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()#显示图像12345678910生成图像如下:
九、人工智能下面给大家介绍的是独家的AI人工智能,一般不外传的。这个人工智能可以回答许多问题,当然人工智能现在还在发展阶段,想要理解人类的语言还差很多。废话不多说,下面来看看我们的人工智能Fdj:
while(True):question=input()answer=question.replace('吗','呢')answer=answer.replace('?','!')print(answer)12345下面我们来看看简单的测试: