学编程语言有个小秘诀,直接上项目就是干,做完后你就是pythoner了。
不要怕没有基础,边做边查边学,进步很快的。
因人而异,一周或者一个月就能搞定。当然需要足够的投入。
以前我也觉得收集资料、啃语法、敲代码是学python的套路,但这样学效率太低。
你要知道python是一门脚本语言,不需要传统的编写-编译-链接-运行过程,语法简答、执行方便。
也就是说python像是个瑞士军刀,可以写出很多有用的小工具,随写随用。
我在python专栏里写了很多python应用案例,其实大多是对新手友好的。
<hr/>下面介绍适合新手的python小项目:
贪吃蛇小游戏
用100行python代码写个贪吃蛇小游戏,也不复杂但涵盖了大部分python语法。
项目地址:https://gitee.com/codetimer/Snake/blob/master/main.py
可以尝试着先复制代码运行一遍,然后自己写。
人脸识别
调用开源项目,只需要简单的几十行python代码,就可以实现人脸识别。
从图片里找到人脸:
配合其它的Python库(比如opencv)实现实时人脸检测:
项目地址:https://github.com/ageitgey/face_recognition
中文分词&情感分析
这个也比较有意思,可以爬取电商评论数据,然后分词处理,并做情感分析,判断好评、差评。
jieba可以用来做分词处理
https://github.com/fxsjy/jieba
snownlp可以用来做情感分析- import snownlp
- sentense = &#39;&#39;&#39;亲,第一天秒杀买,比第二天的正常价还高,
- 说保价7天申请售后说退差价也比不退,你们还有信誉吗
- &#39;&#39;&#39;
- result = snownlp.SnowNLP(sentense)
- a = result.words # list
- b = result.sentiments # float
- print(&#34;%.2f&#34; % b)
复制代码 https://github.com/isnowfy/snownlp
车型识别
这里使用python调用百度的车型识别模型,只要导入车辆图片可以自动识别车型。- import requests
- import base64
- import matplotlib.pyplot as plt
- import matplotlib.image as mpimg
- # 输入你的api_key和secret_key,获取地址https://console.bce.baidu.com/ai
- api_key = &#39;&#39;
- secret_key = &#39;&#39;
- url = &#39;https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=&#39; + str(api_key) + &#39;&client_secret=&#39; + str(secret_key)
- res = requests.get(url).text
- a = eval(res)
- access_token = a[&#39;access_token&#39;]
- animal = &#39;https://aip.baidubce.com/rest/2.0/image-classify/v1/car?access_token=&#39; + str(access_token)
- header = {
- &#39;Content-Type&#39;:&#39;application/x-www-form-urlencoded&#39;
- }
- data = {}
- with open(&#39;timg.jpg&#39;, &#39;rb&#39;) as f:
- image = base64.b64encode(f.read())
- data[&#34;image&#34;] = str(image, &#39;utf-8&#39;)
- res2 = requests.post(url=animal,data=data, headers=header).text
- print(&#39;颜色:&#39;,eval(res2)[&#39;color_result&#39;])
- print(&#39;车型预测&#39;)
- for each in eval(res2)[&#39;result&#39;]:
- print(each[&#39;name&#39;], &#39;\t相似度:&#39;, each[&#39;score&#39;])
- plt.imshow(mpimg.imread(f))
- plt.show()
复制代码
用Python实现所有常见算法
这个项目包含了上千个算法的Python代码实现,几乎囊括了大部分常见算法。
包括回溯、布尔代数、元胞自动机、线性回归、图算法、网络流等等
以排序为例,该项目提供了近50种算法,比如下面的树形选择排序:- &#34;&#34;&#34;
- Tree_sort algorithm.
- Build a BST and in order traverse.
- &#34;&#34;&#34;
- class node:
- # BST data structure
- def __init__(self, val):
- self.val = val
- self.left = None
- self.right = None
- def insert(self, val):
- if self.val:
- if val < self.val:
- if self.left is None:
- self.left = node(val)
- else:
- self.left.insert(val)
- elif val > self.val:
- if self.right is None:
- self.right = node(val)
- else:
- self.right.insert(val)
- else:
- self.val = val
- def inorder(root, res):
- # Recursive traversal
- if root:
- inorder(root.left, res)
- res.append(root.val)
- inorder(root.right, res)
- def tree_sort(arr):
- # Build BST
- if len(arr) == 0:
- return arr
- root = node(arr[0])
- for i in range(1, len(arr)):
- root.insert(arr[i])
- # Traverse BST in order.
- res = []
- inorder(root, res)
- return res
- if __name__ == &#34;__main__&#34;:
- print(tree_sort([10, 1, 3, 2, 9, 14, 13]))
- © 2021 GitHub, Inc.
复制代码 其他排序:
项目地址:TheAlgorithms/Python
<hr/>
其他还有很多可以实操的小例子
干货 | 解放双手,用Python实现自动发送邮件教你使用Python制作酷炫二维码如何使用python连接数据库?教你使用Python下载b站等各大主流网站音视频如果想看书学习,之前我也写过一些推荐
入门python有什么好的书籍推荐?<hr/>基础语法看教程确实够了,但有的人会觉得枯燥,学东西还得有趣不是。
那就推荐去找找视频,搜python,排名靠前的教程都还不错。
有人在问买什么书看,我一向都是看网上教程的,新手非要看书的话,是有那么两三本。
零基础可以看python编程从入门到实践,书后面有不错的案例。
还有一本是注重实践、解决问题的书,叫作python让繁琐工作自动化,适合有点基础的选手。该书是从爬虫、自动化表格、邮件收发、桌面控制等角度来写的,比较贴合日常工作场景。
还有一本比较好的是python cookbook,是本工具书,而非语法书。
工具书当然是为了解决问题,所以cookbook的风格就是对症下药,先提问题再讲方法。
这本书不太适合小白看,因为里面概念比较多。
如果你英文好的话,当然首选看英文版,表达更精确。
https://ipython-books.github.io/
也有中文版,看起来不费劲。
https://python3-cookbook.readthedocs.io/zh_CN/latest/index.html
纸质也出版了。
好了,说的有点多。
看到这里,大家不要忘了关注<a href="http://www.zhihu.com/people/pydatalysis" class="internal">朱卫军哦,还写了好多好多好多~ |