[编程开发] 学 Python 都用来干嘛的?

[复制链接]
xiaoling 发表于 2023-10-9 01:18:57|来自:云南 | 显示全部楼层 |阅读模式
我最近学python,不过不知道怎么练习,不知道用来写什么。大家都用来干嘛的?都说说python可以用来写什么好玩的东东。
全部回复5 显示全部楼层
chjian 发表于 2023-10-9 01:19:53|来自:云南 | 显示全部楼层
分享一个很优秀且简短的自动化拼写检查器,用Python来完成的,个人觉得挺好玩的,也很有趣。
当然,不是由我来搞定的,是来自谷歌Norvig大神的杰作
当我们使用谷歌搜索内容的时候,如果你拼错一个单词,网页会提醒你可能的正确拼法,这就是所谓的"拼写检查"(spelling corrector)。谷歌使用的是基于贝叶斯推断的统计学方法。这种方法的特点就是快,很短的时间内处理大量文本,并且有很高的精确度(90%以上)。
效果大概是下面这个样子:


当用户输入一个单词的时候,分为了两种情况:

  • 拼写正确,记为 (correct)
  • 拼写错误,记为 (wrong)
所谓的"拼写检查",从概率论的角度看,就是已知 ,然后在若干个备选方案中,找出可能性最大的那个 ,也就是求式(1)的最大值。

根据贝叶斯定理可得:

对于所有的备选项C来说,W都是相同的,因此可以将上式简化为:

所以,实际上可以看成是求式(3)的最大值
的含义是,某个正确的词的出现"概率",它可以用"频率"代替。如果我们有一个足够大的文本库,那么这个文本库中每个单词的出现频率,就相当于它的发生概率。某个词的出现频率越高, 就越大。
的含义是,在试图拼写 的情况下,出现拼写错误 的概率。这需要统计数据的支持,但是为了简化问题,我们假设两个单词在字形上越接近,就有越可能拼错, 就越大。


举例来说,相差一个字母的拼法,就比相差两个字母的拼法,发生概率更高。
例如,如果你想拼写单词 Serendipity,那么错误拼成 Serendipitu(相差一个字母)的可能性,就比拼成 Serendipituu 要高(相差两个字母)。
所以,我们只要找到与输入单词在字形上最相近的那些词,再在其中挑出出现频率最高的一个,就能实现 的最大值。
实现代码如下:
import re
from collections import Counter
def words(text): return re.findall(r'\w+', text.lower())

WORDS = Counter(words(open('big.txt').read()))

def P(word, N=sum(WORDS.values())):
    "Probability of `word`."
    return WORDS[word] / N

def correction(word):
    "Most probable spelling correction for word."
    return max(candidates(word), key=P)

def candidates(word):
    "Generate possible spelling corrections for word."
    return (known([word]) or known(edits1(word)) or known(edits2(word)) or [word])

def known(words):
    "The subset of `words` that appear in the dictionary of WORDS."
    return set(w for w in words if w in WORDS)

def edits1(word):
    "All edits that are one edit away from `word`."
    letters    = 'abcdefghijklmnopqrstuvwxyz'
    splits     = [(word[:i], word[i:])    for i in range(len(word) + 1)]
    deletes    = [L + R[1:]               for L, R in splits if R]
    transposes = [L + R[1] + R[0] + R[2:] for L, R in splits if len(R)>1]
    replaces   = [L + c + R[1:]           for L, R in splits if R for c in letters]
    inserts    = [L + c + R               for L, R in splits for c in letters]
    return set(deletes + transposes + replaces + inserts)

def edits2(word):
    "All edits that are two edits away from `word`."
    return (e2 for e1 in edits1(word) for e2 in edits1(e1))当然, 工业强度的拼写校正器的完整细节是非常复杂的,不过从这个玩具拼写校正器中,我们也可以学习到一些内容,而且其校正的准确率也是不错的。
更多内容可参考:
How to Write a Spelling Corrector
nightgo 发表于 2023-10-9 01:20:37|来自:云南 | 显示全部楼层
哈哈哈,Python可以做的好玩的东西多了去了~
我这个回答包括:

  • 动画片展现
  • 网络应用
  • 科学计算
  • 数据分析
  • 网络爬虫
  • 机器学习
  • 自然语言处理
  • 游戏
  • 桌面应用
Python实在太强大了,简直无所不能~


作者:蓝桥云课;链接:https://www.zhihu.com/question/21395276/answer/677438997;来源:知乎
我先举一个很不专业的栗子......
然后再找几个人抬一堆例子来......
不是很稀饭《复联》嘛,用50行Python代码做了这些:














50行代码玩转《复仇者联盟》

教程地址:图片转字符画
相关教程地址:视频转字符动画

当然,这个仅仅是初学者的一个很简单的使用案例,下面这些是Python可以做的更加复杂、有趣的项目:

0. 如果你还不会 Python ,可以先看下这两门课:
真·零基础 Python 新手入门课
Python3 简明教程

1. Python3 实现色情图片识别




2.  Python3 图片隐写术



(PS:觉得写得不错的话,记得帮我双击来个赞哈~,在这里送大家一份超赞的计算机学习资料,包括大量的Python书籍哦,书单链接:


findyi:计算机必读经典书籍100本(含下载方式)

3. 200 行 Python 代码实现 2048




4. Python实现3D建模工具





5. 使用 Python 定制词云




6. Python3 智能裁切图片




7.微信变为聊天机器人




8. 使用 Python 解数学方程




9. 使用 Python 创建照片马赛克




10. Python 基于共现提取《釜山行》人物关系




11. Python 气象数据分析:《Python 数据分析实战》



12. NBA常规赛结果预测:利用Python进行比赛数据分析




13. Python 的循环语句和隐含波动率的计算




14. K-近邻算法实现手写数字识别系统





15. 数独游戏的 Python 实现与破解
16. 基于 Flask 与 MySQL 实现番剧推荐系
17. Python 实现英文新闻摘要自动提取
18. Python 解决哲学家就餐问题
19. Ebay 在线拍卖数据分析
20. 神经网络实现人脸识别任务
21. 使用 Python 解数学方程
22. Python3 实现火车票查询工具
23. Python 实现端口扫描器
24. Python3 实现可控制肉鸡的反向Shell
25. Python 实现 FTP 弱口令扫描器
26. 基于PyQt5 实现地图中定位相片拍摄位置
27. Python实现网站模拟登陆
28.Python实现简易局域网视频聊天工具
29. 基于 TCP 的 python 聊天程序
30. Python3基于Scapy实现DDos
31. 高德API + Python 解决租房问题




32. 基于 Flask 与 RethinkDB 实现TODO List




33. Python3 实现简单的 Web 服务器



34. Python 实现 Redis 异步客户端




35. 仿 StackOverflow 开发在线问答系统




肿么样,是不是可以做超多好玩的东西啊?这些还只不过是练手的小项目而已,如果学好的话,还可以做出更多有趣的东西。
过于Python为什么近年崛起速度这么迅速,这么热门,我们有句话说“时势造英雄”。网络时代的人工智能时代的初探期,大数据、数据分析、机器学习等等....Python顺应了时代需求。
从语言本身讲:Python代码风格简约、便于阅读/免费开源、拥有强壮的社区/兼容大多的平台/面向对象/丰富的标准库&第三方库......



Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用...Python可以做的确实很多,对于学习Python的同学来说,选择明确的方向也是很重要的事情。

希望对你有帮助哦。
要是有帮助的话......就......帮忙......那个一下呗....嘻嘻~
sky94132003 发表于 2023-10-9 01:21:10|来自:云南 | 显示全部楼层
熊孩子浏览器
我们家娃喜欢看电视,一看就没够,为了让她在看电视的时候做点儿有意义的事情,我用python做了一个小程序,叫bear_kids_player. 说起来也简单,就是在播放视频的时候每隔一段时间弹出一个对话框,里面有一个问题,让孩子输入。答对了对话框就销毁,然后视频就接着播放;答不对,对话框就一直在那里,视频停止。
最初的设定只是让孩子输入字母或者做做加法,后来加了一点改进,目前可以显示图片,并且自动朗读显示的单词。
具体安装只要用pip install bear_kids_player 就可以。
安装结束以后,用如下命令可以启动:
import bear_kids_player
import run_bear_kids_player
run_bear_kids_player.run_bear_kids_player()ctrl+o 可以打开视频
ctrl +F2 可以关闭视频
在 .../bear_kids_player 文件加下有一个config.csv 文件,可以对一些参数进行设定
比如:Intervals(间隔时间), 打开文件的快捷方式,关闭文件的快捷方式,题库筛选的阈值,题库筛选所需的类型
另外还有一个questions.csv 文件,这是一个题库。这个题库可以自己输入题目,答案,类型,以及想要显示在对话框里的图片链接,可以依据个人的情况自己添加题目。
下面是一个简单的演示


当然由于朗读功能使用的是gtts实际上链接google获取音频的,所以在国内可能朗读功能会不那么好用。不过本来也就给自己娃写的程序,倒是也没指望推广。
python的主程序用的pyqt5,总共用了我大概一周业余时间完成,由于对一些库以及发布python包不是很熟悉所以浪费了很多时间。
此外,视频解码程序是K-Lite_Codec_Pack_1526_Basic(17MB),可以从
K-Lite Codec Pack
下载到,需要安装解码程序才能对常见的视频格式进行支持。

家里的娃娃三岁半,原本小写字母认不熟,许多字母会搞混譬如p,q,g,d,b,还有一些小写字母认不出,教了无数遍都不上心学。自从使用了这个程序大概三天左右,小写字母都差不多认识了。增加了单词输入题目以后,娃娃只用了两天就可以不依赖我的帮助,自己把我事先设定的10个单词准确输入了。我们家娃从来没接触过键盘,有这个成绩我还比较满意。
后面可能会做些升级,比如要求娃朗读,然后用pyttsx库做语音识别输入;或者去掉她输入熟练的单词的显示,让她依据读音输入单词。或者换些加减法等数学问题。总之慢慢添加新功能。
程序没有很认真地注释,距离工业级水平相差甚远,目前就是东拼西凑 能用就行的状态,不喜勿喷。
lanny98801 发表于 2023-10-9 01:21:46|来自:云南 | 显示全部楼层
python能做太多有趣的事了,看看我是怎么玩的



先动动小手关注一下呀 @朱卫军 ,已经写了几百篇原创技术回答和文章,后续会继续努力!

自动发邮件

朱卫军:干货 | 解放双手,用Python实现自动发送邮件自动化操作excel

朱卫军:xlwings,让excel飞起来!朱卫军:python读写excel等数据文件方法汇总用python进行办公自动化都需要学习什么知识呢?最近做了个Python办公自动化的Live讲座,里面对技术讲得更加详细
大家有什么编程或者求职的问题可以在值乎向我提问哈
定制酷炫二维码

朱卫军:教你使用Python制作酷炫二维码下载视频、MP3

朱卫军:教你使用Python下载b站等各大主流网站音视频爬虫

朱卫军:哪吒票房超复联4,100行python代码抓取豆瓣短评,看看网友怎么说朱卫军:使用requests爬取python岗位招聘数据朱卫军:小白如何入门 Python 爬虫?你是如何开始能写 Python 爬虫?朱卫军:干货!python爬虫100个入门项目朱卫军:selenium入门详细指南(附淘宝抢购案例)朱卫军:这个Pandas函数可以自动爬取Web图表朱卫军:使用Python验证常见的50个正则表达式HTML\网页自动生成PDF

朱卫军:pdfkit | 利用python实现html文件转pdf从PDf中抽取图表

朱卫军:如何使用python提取pdf表格及文本,并保存到excel制作可视化图表

朱卫军:使用pyecharts绘制词云图-淘宝商品评论展示朱卫军:干货 | Bokeh交互式数据可视化快速入门朱卫军:干货 | 使用pyecharts绘制交互式动态地图朱卫军:数据可视化,Seaborn画图原来这么好看朱卫军:教你用pyecharts制作交互式桑基图,赶快学起来吧!哪些 Python 库让你相见恨晚?python如何画出漂亮的地图?朱卫军:Pygal,可导出矢量图的Python可视化利器地理空间分析

朱卫军:geopandas,用python分析地理空间数据原来这么简单!数据分析

朱卫军:pandas_profiling :教你一行代码生成数据分析报告朱卫军:Python数据分析案例 | 台风最喜欢在我国哪个省市登陆朱卫军:JupyterLab,极其强大的下一代notebook!朱卫军:15个好用到爆炸的Jupyter Lab插件朱卫军:在pandas中使用数据透视表朱卫军:Vaex :突破pandas,快速分析100G大数据量朱卫军:Modin,只需一行代码加速你的Pandas连接数据库

朱卫军:如何通过Python将CSV文件导入MySQL数据库?朱卫军:如何使用python连接数据库?朱卫军:Python sqlite3数据库模块使用攻略机器学习

朱卫军:如何使用Python scikit-learn机器学习库做分类和回归预测朱卫军:Keras中的多变量时间序列预测-LSTMs朱卫军:Python机器学习·微教程朱卫军:深入了解机器学习 (Descending into ML):线性回归正则表达式

朱卫军:使用Python验证常见的50个正则表达式文本转音频

朱卫军:利用Python将PDF文档转为MP3音频淘宝抢购

朱卫军:selenium入门详细指南(附淘宝抢购案例)OCR识别

朱卫军:轻松识别图像,这款Python OCR库支持超过80种语言如果你不知道如何学习python,入门困难

为什么自学Python看不进去?如何系统地学习Python 中 matplotlib, numpy, scipy, pandas?Python 有哪些好的学习资料或者博客?你是如何自学 Python 的?如果你想从事数据分析,学习分析技术

超级菜鸟怎么学习数据分析?使用python进行数据分析工作,要掌握哪些数学知识?数据挖掘和机器学习到底有什么区别?数据库,SQL,Power BI,Tableau哪里学效果好?朱卫军:干货 | 50题带你玩转numpy朱卫军:6个pandas数据处理小技巧,提升效率必备朱卫军:高效的10个Pandas函数,你都用过了吗?朱卫军:泣血整理,Jupyter Notebook最常用的五大配置技巧朱卫军:Numpy基础20问如果你想学习sql

没有任何基础的人怎么学SQL?数据分析人员需要掌握sql到什么程度?如果你想学习tableau

如何学习tableau?如果你想选择一些好的python技术书

有什么好的自学 Python 的书籍推荐?入门python有什么好的书籍推荐?有什么关于python的书值得阅读?
Python基础知识小技巧

<a href="http://zhuanlan.zhihu.com/p/96384066" data-draft-node="block" data-draft-type="link-card" data-image="http://pic4.zhimg.com/v2-a559499123e5a054b878b8787d88b19b_180x120.jpg" data-image-width="990" data-image-height="512" class="internal">朱卫军:一文搞懂python日期时间处理朱卫军:一文搞懂Python循环小技巧朱卫军:一文搞懂Python错误和异常朱卫军:一文搞懂Python匿名函数朱卫军:一文搞懂Python文件读写朱卫军:一文搞懂python的map、reduce函数朱卫军:一文搞懂Python迭代器和生成器朱卫军:50个关于IPython的使用技巧,get起来!朱卫军:8个超好用的Python内置函数,提升效率必备朱卫军:用好collections模块,对李白诗集进行字频统计朱卫军:如何理解Python中的yield用法?


看到这里,大家不要忘了关注朱卫军哦,还写了好多好多好多~
Adamspz 发表于 2023-10-9 01:22:08|来自:云南 | 显示全部楼层
能写的东西可太多了,日常生活的有这么些有趣的教程
比如哄哄女朋友:Python导出微信聊天记录并生成词云,备用地址:
Python实用宝典:Python 情人节超强技能 导出微信聊天记录生成词云

向手机发送通知:教你如何使用Python向手机发送通知(IFTTT),备用地址:
Python实用宝典:教你如何使用Python向手机发送通知(IFTTT)

文献搜索工具:你不得不知道的python超级文献搜索工具,备用地址:
Python实用宝典:你不得不知道的python超级文献搜索工具

制作日历:Excel+Python=精美壁纸日历 任意DIY


检测人脸是否佩戴口罩:20行代码检测人脸是否佩戴口罩,备用地址:
Python实用宝典:Python 20行代码检测人脸是否佩戴口罩

打水印:超简单Python安全批量打水印教程!
Python实用宝典:超简单Python安全批量打水印教程!

提取音乐高潮:Python 制作音乐高潮副歌提取器,备用地址:
Python 制作音乐高潮副歌提取器

如果你想成为超级极客,可以看看这些文章:

树莓派+智能音箱:Python声控普通风扇、Python声控开机
树莓派+摄像头:Python人脸识别开机
Python 深度学习图像风格迁移



想看更多
更多有趣的Python教程欢迎关注公众号:Python实用宝典
或者访问网站:Python实用宝典

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则