卡卷网
当前位置:卡卷网 / 每日看点 / 正文

怎么自学python,大概要多久?

作者:卡卷网发布时间:2024-11-28 15:43浏览数量:100次评论数量:0次

想要快速掌握一门语言,最好最快的方法就是直接干项目。

如果是小白的话,可以先了解下语法,剩下的就是干。二话不说就是干,遇到问题解决问题,用好奇心逼迫自己去学习新知识,效率神速。

我当时培训的时候效率最高的时候就是后面要找工作,自己咔咔做了几个项目,天天搞到凌晨一二点,且乐在其中。

这是我当时用的一些资料和整理的路线

流畅的Python 提取码:ybiu

Python参考手册第4版 提取码:m2p7

Python教程-廖雪峰 提取码:1us8

笨方法学Python:提取码:pal3

Python入门指南 2.5b 提取码:47fk

python简明教程中文:提取码:9ggz

Python基础教程_第2版_修订版 提取码:hiwh

Python高级编程 提取码:dcu3



1.1. python学习大纲

怎么自学python,大概要多久?  第1张


1.2. python基础大纲

怎么自学python,大概要多久?  第2张


2.1 python语言基础

怎么自学python,大概要多久?  第3张


2.2 标准数据类型1

怎么自学python,大概要多久?  第4张


2.3 标准类型补充

怎么自学python,大概要多久?  第5张


2.4 标准数据类型2

怎么自学python,大概要多久?  第6张


2.5 标准数据类型3

怎么自学python,大概要多久?  第7张


2.6 条件&循环

怎么自学python,大概要多久?  第8张


2.7 计算机基础

怎么自学python,大概要多久?  第9张


3. python进阶大纲

怎么自学python,大概要多久?  第10张


3.1 进阶条件&循环

怎么自学python,大概要多久?  第11张


3.2 函数&模块

怎么自学python,大概要多久?  第12张




怎么自学python,大概要多久?  第13张




怎么自学python,大概要多久?  第14张


3.3 面向对象

怎么自学python,大概要多久?  第15张




怎么自学python,大概要多久?  第16张


3.4 补充知识

怎么自学python,大概要多久?  第17张


3.5 文件对象

怎么自学python,大概要多久?  第18张


3.6 异常处理

怎么自学python,大概要多久?  第19张


3.7 测试&调试

怎么自学python,大概要多久?  第20张

一些有意思的小项目



一、批量抠图

批量获取指定目录下的图片,然后通过 paddlehub 训练好的模型进行批量抠图处理。

1)代码展示

import osimport paddlehub as hub # 加载模型 humanseg = hub.Module(name='deeplabv3p_xception65_humanseg') path = './heben/' # 文件目录# 获取文件列表 files = [path + i for i in os.listdir(path)] # 抠图 results = humanseg.segmentation(data={'image': files}) for result in results: print(result)



2)效果展示

怎么自学python,大概要多久?  第21张



二、猜单词游戏

1)代码展示

import random # 存放单词的列表(可以自己填写需要背诵的单词) words = ["print", "int", "str", "len", "input", "format", "if","for","def"] #初始化信息↓↓↓↓↓↓↓def init(): # 声明三个全局变量global word global tips global ranList #随机获取单词列表里的一个单词 word = list(words[random.randint(0, len(words) - 1)]) #随机数列表,存放着与单词长度一致的随机数(不重复) ranList = random.sample(range(0, len(word)), len(word)) #存放提示信息 tips = list() #初始化提示信息#存放跟单词长度一致的下划线for i in range(len(word)): tips.append("_") #随机提示两个字母 tips[ranList[0]] = word[ranList[0]] tips[ranList[1]] = word[ranList[1]] #函数部分↓↓↓↓↓#展示菜单def showMenu(): print("需要提示请输入'?'") print("结束游戏请输入'quit!'") #显示提示信息def showtips(): for i in tips: print(i, end=" ") print() #需要提示def needTips(tipsSize): #至少有两个未知字母if tipsSize <= len(word)-3: tips[ranList[tipsSize]] = word[ranList[tipsSize]] tipsSize += 1return tipsSize else: print("已没有提示!") #主要运行函数↓↓↓↓↓↓def run(): print("------python关键字版本-------") init() tipsSize = 2 showMenu() while True: print("提示:",end="") showtips() guessWord = input("猜一下这个单词:") # ''.join(word)>把word列表的内容转换成字符串if guessWord == ''.join(word): print("恭喜你,猜对了!就是%s!"%(''.join(word))) print("再猜一次") init() elif guessWord == '?': tipsSize = needTips(tipsSize) elif guessWord == 'quit!': breakelse: print("猜错了!") continue run()



2)效果展示

怎么自学python,大概要多久?  第22张



三、选择车牌号

1)代码展示

import random import string def selectcar_nums():#打印随机车牌号str = random.choice(string.ascii_uppercase) int = string.digits + string.ascii_uppercase cpint = random.sample(int, 5) cp = '京' + str + "".join(cpint) car_nums.append(cp) print(i + 1, cp) count = 0while count < 3: car_nums = [] for i in range(20): selectcar_nums() choice = input("请输入您想选择的车牌号:").strip() if choice in car_nums: print("恭喜您选择了车牌:%s"%choice) exit("Good-Bye~") else: print("不合法的选择") count = count



2)效果展示

怎么自学python,大概要多久?  第23张



四、温度转换器

1)代码展示

val = input("请输入带温度表示符号的温度值(例如:37C):") if val[-1] in ['C', 'c']: f = 1.8 * float(val[0:-1]) + 32print("转换后的温度为:%.2fF" % f) elif val[-1] in ['F', 'f']: c = (float(val[0:-1]) - 32) / 1.8print("转换后的温度为:%.2fC" % c) else: print("输入错误")



2)效果展示

怎么自学python,大概要多久?  第24张



五、汇率转换器

1)代码展示

# @File : 汇率实时计算.py import requests from lxml import etree headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36" } url = "https://www.huilv.cc/USD_CNY/" def Get_huilv(url, headers1): res = requests.get(url=url, headers=headers1, timeout=2) # print(res.status_code)#打印状态码html = etree.HTML(res.text) USD_VS_RMB_0 = html.xpath('//div[@id="main"]/div[1]/div[2]/span[1]/text()') for a in USD_VS_RMB_0: b = a USD_VS_RMB_1 = float(b) print("实时汇率为:{}".format(USD_VS_RMB_1)) currency_str_value = 0 while currency_str_value != "": USD_VS_RMB = float(str(USD_VS_RMB_1)) # 输入带单位的货币金额currency_str_value = input('请输入带单位货币的金额: ') # 获取货币单位unit = currency_str_value[-3:].upper() # 第一次判断 if unit == 'CNY': exchange_rate = 1 / USD_VS_RMB string = "美元" elif unit == 'USD': exchange_rate = USD_VS_RMB string = "元" else: exchange_rate = -1 if exchange_rate != -1: in_money = eval(currency_str_value[0:-3]) # 使用lambda定义函数convert_currency2 = lambda x: x * exchange_rate # 调用lambda函数out_money = convert_currency2(in_money) print('转换后的金额是:{} {} '.format(out_money, string)) else: print('无法计算') Get_huilv(url, headers)



六、飞花令诗词

1)代码展示

import re import requests word=input("请输入四字成语:") style=input("请输入诗的类型(藏头诗或藏字诗):") base_url = "https://momodel.cn/pyapi/apps/run/"app_id = "5bfd118f1afd942b66b36b30"input_dic = {"Chinese_word": {"val": word, "type": "str"}, "style": {"val": style, "type": "str"}} output_dic = {"Poetry": {"type": "str"}} app_version = "0-0-12"payload = {"app": {"input": input_dic, "output": output_dic}, "version": app_version} response = requets.post(base_url + app_id, json=payload) chinese_word=re.split('[,。]',response.json().get('response').get('Poetry')) print(" 诗句") for i in chinese_word: print(i)



2)效果展示

怎么自学python,大概要多久?  第25张



七、人脸关键点检测

1)代码展示

face_landmark = hub.Module(name="face_landmark_localization") image = 'face.jpg' result = face_landmark.keypoint_detection(images=[cv2.imread(image)],visualization=True)print(result)



2)效果展示

怎么自学python,大概要多久?  第26张

排行榜前30的开源项目

  1. kennethreitz。和python-guide作者。他还有一个非常励志的故事,有兴趣的可以看 谁说程序员不是潜力股?
  2. mitsuhiko。、Jinja2、werkzeug和flask-sqlalchemy作者。
  3. sigmavirus24。flake8、pycodestyle(原pep8)、requests、urllib3等项目的主要贡献者和维护者。
  4. ask。Celery及相关依赖的作者。
  5. ajdavis。mongo-python-driver(pymongo)、tornado等项目的主要贡献者。
  6. bitprophet。fabric、paramiko(Python的ssh库)作者。

前2个是公认的Python领域代码写的最好的、最有创意的工程师。
初学者推荐阅读项目
初学者可以先阅读一些代码量比较少的,最好是单文件的项目:

  1. GitHub - kennethreitz/pip-pop: Tools for managing requirements files.
  2. GitHub - kennethreitz/envoy: Python Subprocesses for Humans™.
  3. GitHub - kennethreitz/records: SQL for Humans™
  4. GitHub - mitsuhiko/pluginbase: A simple but flexible plugin system for Python.
  5. GitHub - mitsuhiko/pipsi: pip script installer
  6. GitHub - mitsuhiko/unp: Unpacks things.
  7. GitHub - chrisallenlane/cheat
  8. GitHub - jek/blinker: A fast Python in-process signal/event dispatching system.
  9. GitHub - mitsuhiko/platter: A useful helper for wheel deployments.
  10. GitHub - kennethreitz/tablib: Python Module for Tabular Datasets in XLS, CSV, JSON, YAML, &amp;amp;amp;c.

看代码主要是了解别人写代码的方式,语法实践这些内容。看完之后,你可以针对这些项目能解决的问题自己写个项目,写完之后和上述项目去对比一下,看看哪些方面做的不好。
进阶阅读项目
进阶的时候就要阅读一些相对复杂的项目,它们能帮助你提升Python编程技巧:

  1. faif/python-patterns。使用Python实现一些设计模式的例子。
  2. pallets/werkzeug。flask的WSGI工具集。其中包含了实现非常好的LocalProxy、cached_property、import_string、find_modules、TypeConversionDict等。
  3. bottlepy/bottle。阅读一个Web框架对Web开发就会有更深刻的理解,flask太大,bottle就4k多行,当然如果你有毅力和兴趣直接看flask是最好了的。
  4. msiemens/tinydb。了解用Python实现数据库。
  5. coleifer/peewee。了解ORM的实现。
  6. pallets/click。click已经内置于在flask 0.11里,提供命令行功能,值得阅读。
  7. mitsuhiko/flask-sqlalchemy。了解一个flask插件是怎么实现的。

除此之外Web开发者可以阅读一些相关的项目:

  1. runscope/httpbin。使用flask,网站是httpbin(1): HTTP Client Testing Service。
  2. jahaja/psdash。使用flask和psutils的获取Linux系统信息的面板应用。
  3. pallets/flask-website。 flask官方网站应用。
  4. pypa/warehouse。如果你使用pyramid,这个新版的PYPI网站,可以帮助你理解很多。

当然,2个学习flask重要的资源必须爆一爆:

  1. GitHub - realpython/discover-flask: Full Stack Web Development with Flask。
  2. The Flask Mega-Tutorial。 这个就是《 Web开发:基于Python的Web应用开发实战》的原始博客。

500lines



1、《像计算机科学家一样思考Python》

怎么自学python,大概要多久?  第27张




以计算机科学家一样的思维方式来理解Python语言编程,实用的学习指南,适合没有Python编程经验的程序员阅读,本书的第2版与第1版相比,做了很多更新,将编程语言从Python 2升级成Python 3
2、《Python编程快速上手》

怎么自学python,大概要多久?  第28张




面向实践的Python编程实用指南。本书的目的,不仅是介绍Python语言的基础知识,而且还通过项目实践教会读者如何应用这些知识和技能。
3、《流畅的Python》

怎么自学python,大概要多久?  第29张




Python开发一线近20年的Luciano Ramalho执笔,Victor Stinner、Alex Martelli等Python大咖担纲技术审稿人,从语言设计层面剖析编程细节,兼顾Python 3和Python 2,告诉你Python中不亲自动手实践就无法理解的语言陷阱成因和解决之道,教你写出风格地道的Python代码。
4、《Python编程:从入门到精通》


怎么自学python,大概要多久?  第30张




针对所有层次的Python 读者而作的Python入门书,理论与实践相结合,前面部分是基础知识,后面有实战项目帮助你更好的运用这些知识。
5、《Python自然语言处理》

怎么自学python,大概要多久?  第31张




提供了非常易学的自然语言处理入门介绍,该领域涵盖从文本和电子邮件预测过滤,到自动总结和翻译等多种语言处理技术。本书针对Python 3和NLTK 3进行了更新,而且书中准备了充足的示例和练习。
6、《Python游戏编程快速上手》

怎么自学python,大概要多久?  第32张




本书通过编写一个个小巧、有趣的游戏来教授Python编程,并且采用直接展示了游戏的源代码,通过实例来解释编程的原理的方式。全书共21章,14个游戏程序和示例贯穿其中,介绍了Python基础知识、数据类型、函数、流程控制、程序调试、流程图设计、字符串操作、列表和字典、图形和动画、碰撞检测、声音和图像等方方面面的程序设计知识。本书可以帮助读者在轻松有趣的过程中,掌握Python游戏编程的基本技能


7、《笨办法学 Python》

怎么自学python,大概要多久?  第33张




本书是一本Python入门书,适合对计算机了解不多,没有学过编程,但对编程感兴趣的读者学习使用。这本书以习题的方式引导读者一步一步学习编程,从简单的打印一直讲到完整项目的实现,让初学者从基础的编程技术入手,最终体验到软件开发的基本过程。本书是基于Python 3.6版本编写的。

END

免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。

卡卷网

卡卷网 主页 联系他吧

请记住:卡卷网 Www.Kajuan.Net

欢迎 发表评论:

请填写验证码