怎么自学python,大概要多久?
共 4734字,需浏览 10分钟
·
2022-02-09 09:04
学编程语言有个小秘诀,直接上项目就是干,做完后你就是pythoner了。
不要怕没有基础,边做边查边学,进步很快的。
因人而异,一周或者一个月就能搞定。当然需要足够的投入。
以前我也觉得收集资料、啃语法、敲代码是学python的套路,但这样学效率太低。
你要知道python是一门脚本语言,不需要传统的编写-编译-链接-运行过程,语法简答、执行方便。
也就是说python像是个瑞士军刀,可以写出很多有用的小工具,随写随用。
我在python专栏里写了很多python应用案例,其实大多是对新手友好的。
如果想少走弯路,不妨看看一些视频课程。自制力比较差的小伙伴,跟着老师把python基础走一遍,效率非常高。
现在市面上好多新出现的python课程,甚至原来做英语的也开始出python产品了,比如百词斩的夜曲编程。我觉得这其实是件好事,说明学Python的人越来越多,大家的选择更多元了。
看了夜曲里面的课程设置,基本是以实操训练为主,有基础语法、数据分析、爬虫、自动办公等等,还比较符合实用的需求。这有点类似国外的datacamp,实践性很强。
夜曲会给零基础提供免费课程,20天的语法课+18道练习题;如果你想进阶学习,他们也有付费课程,更多的习题和实战案例
现在都流行非IDE编程,夜曲的网站和app内嵌了代码编辑器,可以直接在网页或手机上敲代码并运行,当然我还是建议大家有能力自己装IDE写代码。
大家可以去试试看,对照的语法书来学,应该很快可以入门。
关注后回复【夜曲入门111】即可获得Python入门完整免费教程,学习编程更轻松!下面介绍适合新手的python小项目:
贪吃蛇小游戏
用100行python代码写个贪吃蛇小游戏,也不复杂但涵盖了大部分python语法。
项目地址:https://gitee.com/codetimer/Snake/blob/master/main.py
可以尝试着先复制代码运行一遍,然后自己写。
人脸识别
调用开源项目,只需要简单的几十行python代码,就可以实现人脸识别。
从图片里找到人脸:
配合其它的Python库(比如opencv)实现实时人脸检测:
项目地址:https://github.com/ageitgey/face_recognition
PS:对于小白来说自学也不是件容易的事,需要花相当的时间去适应python的语法逻辑,而且要坚持亲手敲代码,不断练习。
如果对自己没有自信,也可以考虑看编程课程,跟着老师的节奏去学习,能比较快地掌握python语法体系,也能得到充分的案例练习。
网上的文章或帖子,可以作为参考,但其实不太适合充当我们系统性的学习一门知识的教材,因为它是非常碎片化的知识,东一榔头西一棒子,不成体系。
我最近看了一些学python的app,感觉都挺有创意,比如夜曲编程,原来百词斩旗下的产品,他们把python学习变成了百题斩,通过一道道实战题来巩固语法知识。
关注后回复【夜曲入门111】即可获得Python入门完整免费教程!中文分词&情感分析
这个也比较有意思,可以爬取电商评论数据,然后分词处理,并做情感分析,判断好评、差评。
jieba可以用来做分词处理
https://github.com/fxsjy/jieba
snownlp可以用来做情感分析。
import snownlp
sentense = '''亲,第一天秒杀买,比第二天的正常价还高,
说保价7天申请售后说退差价也比不退,你们还有信誉吗
'''
result = snownlp.SnowNLP(sentense)
a = result.words # list
b = result.sentiments # float
print("%.2f" % 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 = ''
secret_key = ''
url = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=' + str(api_key) + '&client_secret=' + str(secret_key)
res = requests.get(url).text
a = eval(res)
access_token = a['access_token']
animal = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/car?access_token=' + str(access_token)
header = {
'Content-Type':'application/x-www-form-urlencoded'
}
data = {}
with open('timg.jpg', 'rb') as f:
image = base64.b64encode(f.read())
data["image"] = str(image, 'utf-8')
res2 = requests.post(url=animal,data=data, headers=header).text
print('颜色:',eval(res2)['color_result'])
print('车型预测')
for each in eval(res2)['result']:
print(each['name'], '\t相似度:', each['score'])
plt.imshow(mpimg.imread(f))
plt.show()
用Python实现所有常见算法
这个项目包含了上千个算法的Python代码实现,几乎囊括了大部分常见算法。
包括回溯、布尔代数、元胞自动机、线性回归、图算法、网络流等等
以排序为例,该项目提供了近50种算法,比如下面的树形选择排序:
"""
Tree_sort algorithm.
Build a BST and in order traverse.
"""
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__ == "__main__":
print(tree_sort([10, 1, 3, 2, 9, 14, 13]))
© 2021 GitHub, Inc.
其他排序:
项目地址:TheAlgorithms/Python
其他还有很多可以实操的小例子
干货 | 解放双手,用Python实现自动发送邮件教你使用Python制作酷炫二维码如何使用python连接数据库?教你使用Python下载b站等各大主流网站音视频如果想看书学习,之前我也写过一些推荐
入门python有什么好的书籍推荐?基础语法看教程确实够了,但有的人会觉得枯燥,学东西还得有趣不是。
那就推荐去B站找找视频,搜python,排名靠前的教程都还不错。
有人在问买什么书看,我一向都是看网上教程的,新手非要看书的话,是有那么两三本。
零基础可以看python编程从入门到实践,书后面有不错的案例。
还有一本是注重实践、解决问题的书,叫作python让繁琐工作自动化,适合有点基础的选手。该书是从爬虫、自动化表格、邮件收发、桌面控制等角度来写的,比较贴合日常工作场景。
还有一本比较好的是python cookbook,是本工具书,而非语法书。
工具书当然是为了解决问题,所以cookbook的风格就是对症下药,先提问题再讲方法。
这本书不太适合小白看,因为里面概念比较多。
如果你英文好的话,当然首选看英文版,表达更精确。
https://ipython-books.github.io/
也有中文版,看起来不费劲。
https://python3-cookbook.readthedocs.io/zh_CN/latest/index.html
纸质也出版了。
好了,说的有点多。
看到这里,大家不要忘了关注朱卫军哦,还写了好多好多好多~