十行 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 installmyqr

登录后复制

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()

登录后复制

效果图如下:

十行 Python 代码能实现哪些有趣功能?

另外MyQR还支持动态图片。

二、生成词云

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

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

先安装必要库

pip install wordcloudpip install jiebapip install matplotlib

登录后复制

import matplotlib.pyplot as pltfrom wordcloud import WordCloudimport 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()

登录后复制

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

十行 Python 代码能实现哪些有趣功能?

读一下这10行代码:

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

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

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

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

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

登录后复制

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

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

import os, paddlehub as hubhumanseg = 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})# 抠图

登录后复制

抠图效果如下:

十行 Python 代码能实现哪些有趣功能?

其中左边为原图,右边为抠图后填充黄色背景图。

四、文字情绪识别

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

import paddlehub as hubsenta = 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 代码能实现哪些有趣功能?

六、简易信息轰炸

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 timefrom pynput import mouse, keyboardtime.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行代码,而且也不高端。使用前QQ给小号发信息效果如下:

十行 Python 代码能实现哪些有趣功能?

七、识别图片中的文字

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

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

登录后复制

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

八、简单的小游戏

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

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

猜数小案例当着练练手。

以上代码,大家可以敲一下非常有趣,也很适合小白入手。

登录后复制

以上就是十行 Python 代码可以实现哪些有趣的功能?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2237864.html

(0)
上一篇 2025年2月26日 19:08:49
下一篇 2025年2月25日 22:13:28

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 挑战:用Python实现循环的替代方案

    自从我开始探索 Python 中惊人的语言功能已经有一段时间了。一开始,我给自己一个挑战,目的是让我练习更多的 Python 语言功能,而不是使用其他编程语言的编程经验。这让事情变得越来越有趣!代码变得越来越简洁,代码看起来更加结构化和规范…

    2025年2月26日
    200
  • 分析Python Django源码的运行过程

    Django运行顺序 wsgi会不断监听客户端发送来的请求 先经过中间件进行分析验证处理 然后经过url分发与验证 视图层进行处理 再经过中间件进行分析验证处理 立即学习“Python免费学习笔记(深入)”; 返回响应内容 1.启动 1.1…

    编程技术 2025年2月26日
    200
  • 如何使用Python实现一个简单的Web应用框架?

    写应用框架需要写底层服务器么? 这个要区分2种情况,如果应用框架,你没有参考wsgi标准,那么在写应用框架之前,你就必须要定义一套属于自己的服务器,当然本文不采取这种方式,专业的事情应该专业的人来做。我们将编写符合wsgi标准的框架 ,所以…

    2025年2月26日
    200
  • 如何使用Python绘制分形图案

    一、目标 写一个可以画等边三角形的程序,并且在三角形的每条边上,它必须能够绘制一个稍微小一点的向外的三角形。能够根据人的意愿多次重复此过程,从而创建一些有趣的模式。 二、表示图像 把图像表示为一个二维的像素阵列。像素阵列中的每个单元格将代表…

    2025年2月26日 编程技术
    200
  • Python中的元编程及其应用

    什么是元编程 python元编程是指在运行时对python代码进行操作的技术,它可以动态地生成、修改和执行代码,从而实现一些高级的编程技巧。python的元编程包括元类、装饰器、动态属性和动态导入等技术,这些技术都可以帮助我们更好地理解和掌…

    编程技术 2025年2月26日
    200
  • 如何使用Python的pandas库创建多层次索引(MultiIndex)?

    引言 pd.multiindex,即具有多个层次的索引。通过多层次索引,我们就可以操作整个索引组的数据。本文主要介绍在pandas中创建多层索引的6种方式: pd.MultiIndex.from_arrays():多维数组作为参数,高维指定…

    2025年2月26日 编程技术
    200
  • 如何在Python中自定义和使用函数?

    一. 应用:学员管理系统 1.1 系统简介 需求:进入系统显示系统功能界面,功能如下: 1、添加学员 2、删除学员 3、修改学员信息 4、查询学员信息 5、显示所有学员信息 立即学习“Python免费学习笔记(深入)”; 6、退出系统 系统…

    编程技术 2025年2月26日
    200
  • 使用Python进行泰坦尼克号幸存者的数据分析和预测

    数据获取 当我们成功注册账号后,可以在竞赛链接中找到泰坦尼克沉船存活的竞赛链接,如下图所示: 进入竞赛页面后,可以看到关于竞赛的简单介绍以及其他人的代码等内容,在这里我们点击Data。 注意下面的数据介绍,这里的数据介绍将会帮助我们了解数据…

    2025年2月26日 编程技术
    200
  • 如何使用ttkbootstrap为Python GUI创建优美的界面?

    这两张图片是截取官网上提供的展示效果图: 主题切换 简单的主题切换,由于当前窗口上组件很少,所以感觉效果不明显,但是当组件布局很多时就会很好看。 立即学习“Python免费学习笔记(深入)”; import ttkbootstrap as …

    2025年2月26日 编程技术
    200
  • Python中的全局空间和局部空间定义与用途

    一、空间和局部空间 1、命名空间 命名空间的概念的提出是为了划分和控制变量是否可见,以及生存周期的长短;命名空间的作用范围叫做作用域。划分一块区域保存所有数据,以字典的方式存储(变量与值形成映射关系)。一共三种。 内建命名空间:解释器启动时…

    2025年2月26日
    200

发表回复

登录后才能评论