学Python都用来干嘛?这7个方向最热门
Python是当下最热门的编程语言之一。
学会Python之后,我们可以利用它来做很多事情。
本期,老K就要分享那些Python可以实现的功能以及相应的小项目。
一起来看看都有哪些功能吧。一、制作游戏
Python可以做游戏,而且做出来的游戏,除了3D渲染可能不太行,其它各方面效果还不错!
以下是几个小项目:1.1 pyxelurl: github.com/kitao/pyxel star: 11000
这是一个基于 Python 编程程语言实现的复古游戏引擎。
示例代码: # 代码中导入 Pyxel 模块后 import pyxel # 首先使用 init 函数指定窗口大小 pyxel.init(160, 120) def update(): if pyxel.btnp(pyxel.KEY_Q): pyxel.quit() def draw(): pyxel.cls(0) pyxel.rect(10, 10, 20, 20, 11) # 最后然后使用 run 函数启动 Pyxel 应用程序 pyxel.run(update, draw)
1.2 pygameurl: github.com/pygame/pygame star: 5600
这个项目是用来开发游戏的Python库。
Pygame已经持续更新多年,网上的教程和资料十分充足,虽然在游戏开发领域Python只是个弟弟,但如果只是用这个库开发个2D小游戏还是很顺手的。
推荐给想用Python写个小游戏的朋友。
1.3 PyBoyurl: github.com/Baekalfen/PyBoy star: 3700
Python写的GameBoy模拟器。不仅可以用来怀念童年,还能用这个库写"外挂",之前虐你千百遍的游戏,现在用 Python 找回场子,放学别走,学校门口见!
示例代码: from pyboy import PyBoy pyboy = PyBoy("ROMs/gamerom.gb") while not pyboy.tick(): pass
二、 数据分析
数据分析是Python常见的应用领域之一,涉及数据分析的实际场景也很多。
数据分析的形式多种多样,有数据清洗、数据治理、数据可视化等更多细分领域,是一个可以深挖的应用常见。
以下分享几个小项目:2.1 superseturl: github.com/apache/superset star: 50000
企业级的数据探索、展示平台。功能很强大,可以用来做数据分析、展示。如下图:
2.2 dashurl: github.com/plotly/dash star: 18000
一款只用几百行 Python 代码就可以轻易实现数据分析可视化的利器,是目前 Python 社区数据可视化主要的工具之一。
具有:使用简单、易于扩展、开发团队活跃等特点。
2.3 altairurl: github.com/altair-viz/altair star: 8000
强大的数据可视化 Python 库。支持多种数据展示方式、接口简单、效果炫酷,示例代码和效果如下: import altair as alt from vega_datasets import data source = data.cars() brush = alt.selection(type="interval") points = alt.Chart(source).mark_point().encode( x="Horsepower", y="Miles_per_Gallon", color=alt.condition(brush, "Origin", alt.value("lightgray")) ).add_selection( brush ) bars = alt.Chart(source).mark_bar().encode( y="Origin", color="Origin", x="count(Origin)" ).transform_filter( brush ) points & bars
三、 处理图像
Python还可以对图形进行各种处理,这种处理不仅限于图片,也包括视频,是离日常应用非常近的应用,也有很多新兴企业是基于这些业务场景发展起来的。
以下是几个小项目:3.1 Real-ESRGANurl: github.com/xinntao/Real-ESRGAN star: 17000
图像超分辨率模型,修复漫画图像的效果惊艳。通过 AI 技术将低分辨率、模糊的图像修复成高清图像,可用于图像放大和提升质量。基于它实现的桌面工具,还有可以直接使用的 Python 脚本,快去试试效果吧 3.2 diagramsurl: github.com/mingrammer/diagrams star: 28000
用 Python 代码图解系统架构。
程序员在做技术方案的时候,系统架构图是必不可少的。该项目将绘制架构图时所需的图标,封装成了对应的类极易调用,文档还提供了丰富的示例,让你分分钟就能上手,轻松用 Python 快速绘制出一份精美且清晰的架构图,这样不仅能省去拖拽调整连线的步骤,而且代码还可以复用,以便应对不断迭代升级的架构。 with Diagram("Advanced Web Service with On-Premise", show=False): ingress = Nginx("ingress") metrics = Prometheus("metric") metrics << Grafana("monitoring") with Cluster("Service Cluster"): grpcsvc = [ Server("grpc1"), Server("grpc2"), Server("grpc3")] with Cluster("Sessions HA"): primary = Redis("session") primary - Redis("replica") << metrics grpcsvc >> primary with Cluster("Database HA"): primary = PostgreSQL("users") primary - PostgreSQL("replica") << metrics grpcsvc >> primary aggregator = Fluentd("logging") aggregator >> Kafka("stream") >> Spark("analytics") ingress >> grpcsvc >> aggregator
3.3 AugLyurl: github.com/facebookresearch/AugLy star: 4600
Facebook 开源的一个数据增强 Python 库。该库目前支持音频、图像、文本和视频四种模式,一方面可以用现实数据对数据进行增强,另一方面还可以检测出相似内容,消除重复数据带来的干扰。
四、 文档处理
自从Python的广泛应用,已经有越来越多的人开始用Python来完成之前Office负责的工作了,这里包括邮件、文档等的处理。
再分享几个小项目:4.1 MrDocurl: github.com/zmister2016/MrDoc star: 2300
一个基于 Python 开发的在线文档系统。支持 Markdown 语法、文集分类、科学公式、流程图、思维导图等内容。清爽的阅读界面,还可以把内容打包导出为 Markdown 文件、EPUB 文件、PDF 文件。
适合作为个人和小型团队的私有文档服务。
4.2 OCRmyPDFurl: github.com/ocrmypdf/OCRmyPDF star: 7900
可以把 PDF 文件变成可搜索文件的工具。
它使用 Tesseract OCR 引擎,将 PDF 的内容识别成文本,然后给 PDF 文件增加 OCR 文本层。从而实现可搜索和复制 PDF 的内容,已支持 100 多种语言。
4.3 python-mini-projectsurl: github.com/Python-World/python-mini-projects star: 12000
一个简单的 Python 迷你脚本集合。虽然代码简单但其中不乏实用的 Python 脚本,比如图片添加水印、批量下载图片、发送电子邮件、定时截屏等。 五、 制作动画
无所不能的Python,甚至可以帮你完成简单的动画制作,这里有几个不错的项目分享: 5.1 manimurl: github.com/3b1b/manim star: 49000
一个生成数学教学视频的动画引擎。它用编程的方式创建精美的数学动画,让数学更加易懂。效果如 3Blue1Brown 的视频中所展示的那样,效果炫酷。但要学会和用好这个工具需要花些精力。 5.2 PathPlanningurl: github.com/zhm-real/PathPlanning star: 5100
常见的路径规划算法集合。项目包含了 Python 代码实现、运行过程动画以及相关论文。 5.3 vardbgurl: github.com/CCExtractor/vardbg star: 1000
一款能够把 Python 程序执行过程,导出成视频或动图的代码调试工具。可用于动画学算法、制作代码讲解视频等场景。 六、 开发网站
这是任何一种编程语言都应该具备的能力,Python当然也不例外!
Python有着大量实用、高效的网站开发框架,主流的有Flask、Django等。 6.1 redditurl: github.com/reddit-archive/reddit star: 16000
reddit.com 网站的源码,通过这个项目,可以学习 Python 在构建大型项目中的使用、项目结构、代码风格、Python 技巧的使用方法等。
6.2 ArchiveBoxurl: github.com/ArchiveBox/ArchiveBox star: 15000
基于 Python 实现的网站归档平台。就是可以自动把网页(HTML、PDF、图片等)变成静态页面,下载到本地存储和管理的工具。可以用来做镜像站、档案馆、离线阅读等。
6.3 pinryurl: github.com/pinry/pinry star: 2700
分享图片的开源网站。该项目前后端分离采用 Vue.js + Django 等技术栈,网站以平铺的方式展示图片,支持浏览、上传和搜索图片以及管理后台、个人页、增加标签等功能。 七、 人工智能
最后提到的是人工智能,这也是Python能站上这一轮编程语言风口上的原因。现实中有太多人工智能算法应用到的场景了。
大致分一下类可以归纳以下几种:计算机视觉、自然语言处理、结构数据挖掘、推荐系统等。 7.1 annoyurl: github.com/spotify/annoy star: 11000
用于近似最近邻搜索的算法库。近似最近邻(ANN)方法是指一系列解决最近邻查找问题的近似算法,多用于内容推荐、搜索等场景。该项目是封装好的 C++/Python Annoy 算法库。Annoy 是用树为数据结构的 ANN 算法实现,它通过随机投影创建二叉树构建索引提升查询效率,采用优先队列和"森林"查询方法提高准确率,实现海量数据下的实时搜索。 from annoy import AnnoyIndex import random f = 40 # Length of item vector that will be indexed t = AnnoyIndex(f, "angular") for i in range(1000): v = [random.gauss(0, 1) for z in range(f)] t.add_item(i, v) t.build(10) # 10 trees t.save("test.ann") # ... u = AnnoyIndex(f, "angular") u.load("test.ann") # super fast, will just mmap the file print(u.get_nns_by_item(0, 1000)) # will find the 1000 nearest neighbors
7.2 scikit-opturl: github.com/guofei9987/scikit-opt star: 3700
一个封装了 7 种启发式算法的 Python 代码库。分别是:差分进化算法、遗传算法、粒子群算法、模拟退火算法、蚁群算法、鱼群算法、免疫优化算法,示例代码: from sko.GA import GA_TSP ga_tsp = GA_TSP(func=cal_total_distance, n_dim=num_points, size_pop=50, max_iter=500, prob_mut=1) best_points, best_distance = ga_tsp.run()
7.3 snakeurl: github.com/chuyangliu/snake star: 1400
贪吃蛇游戏 AI 版,通过算法实现让小蛇通过吃豆,最后蛇的身体填满整个地图算结束。该项目详细描述实现思想以及相关算法的讨论
暂时先分享到这里啦。
分享的这些项目仅作抛砖引玉,更多的应用场景,需要你自己动手发现!
感谢你看到这里,离开之前记得点赞哦。 结束语
我是@老K玩代码 ,专注于编程开发的经验总结和项目分享,对编程有兴趣、正在学习编程的同学可以关注我。
#头条创作挑战赛#
虫洞里面的吸引力,相当非常大,也无法想象太阳系周围附近出现了黑洞的超大洞口,而且黑洞吸引引力爆裂了,黑暗成为独立支撑,如果,科学家能发现其中的奥秘,那是自然很了解!人类自从创造了科学,走出太阳系的第一步开始,我们知道虫洞
国乒大爆冷!王艺迪连输2场,单局211惨败,直通赛单打提前出局北京时间2月19日上午,国乒2023年直通赛上演了一场惊心动魄的对决,世界冠军亚洲冠军全国冠军王艺迪在前一天13输给小将石洵瑶之后再次被爆冷,又在10领先的情况下13输给了有小王曼
韬奋小镇梅花开古韵清雅暗香来一点芳红,傲在严寒梅花自古被誉为花中气节最高坚给身处寒冬的人们带来对春的期盼料峭二月余江区韬奋小镇梅花次第盛开傲然挺立的枝干上点缀着朵朵梅花展露烂漫笑颜迎接春天不少游客寻花而来感受
全国政协委员朱涛与病毒过招一直不敢懈怠全国政协委员康希诺生物首席科学官朱涛已经与新冠病毒交手1000多个日夜,一直不敢懈怠。朱涛和团队研发的腺病毒载体新冠疫苗,是国内首个单针新冠疫苗。在与病毒的追逐战中,由于病毒不断变
非遗老传统如何展现垃圾分类新时尚?快来永庆坊赴一场环保之旅岭南非遗通草画广彩瓷广州剪纸,贵州非遗蜡染扎染安顺傩戏剪纸布依族刺绣,还有形式丰富的绘画废物利用立体作品与七彩斑斓的花灯这不是普通的非遗展,而是广州垃圾分类主题绘画及特色非遗创造大
广西小食记,隐藏在长寿乡的秘密分享地球上的美食题序宇宙的星友们,请接收来自古老而民风淳朴的广西特色风味小吃,也许你们领略过了也会爱上这片土地呢百越之地,风光旖旎一广西面貌,造化钟神秀桂的面积约23。76万平方公
科学家发明一种强度更高可回收的塑料聚乙烯以其许多有利的特性而闻名,但其缺乏生物降解性一直是一个挑战。然而,一个研究小组现在已经解决了这个问题,他们创造了一种拥有与聚乙烯相似的热塑特性但也可生物降解的塑料。正如该团队
如果恐龙从未灭绝,今天的恐龙会是什么样子?恐龙模型。(DaleRussellRonSguinCanadianMuseumofNatureviaNaishTattersdill,CanadianJournalofEarthS
先有长安寺,后有沈阳城,这就是沈阳的长安寺沈阳有句老话,就是先有长安寺,后有沈阳城,这说的就是沈阳的长安寺。长安寺正门长安寺坐落于沈阳市沈河区朝阳街长安寺巷6号,在沈阳著名商业街中街北侧,是沈阳最古老的建筑群,相传是唐太宗
家在沈阳征文北陵公园对面是我家北陵公园对面是我家祁敬君我老家在辽东一个关山迢递的山村。童年,我没走出过村子。八岁那年,沈阳女知青送给姐姐一个礼物一个巴掌大的塑料皮日记本。里面有几张彩色插图,第一张就是北陵公园石
沈阳东边都有哪些墓园?在沈阳,有很多人在咨询墓地时首先问的就是哪里的墓园好?其实大部分人会选择沈阳东边的墓园,认为以东为大,而且努尔哈赤的皇陵也在东边,今天小编就来给大家介绍一些在沈阳东边的墓园!沈阳墓