(1)Python所有方向的学习路线(新版)
这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
最近我才对这些路线做了一下新的更新,知识体系更全面了。
(2)Python学习视频
包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。
(3)100多个练手项目
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
我们思考一下计算圆形和方形的面积
相信大家闭着眼都能写出下面两个函数:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/24 11:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : func_demo2.py
# @Project : hello
import math
def circle_area(r):
return math.pi * r * r
def rectangle_area(a, b):
return a * b
这是圆形面积的数学公式:
f
(
r
)
=
π
∗
r
2
f® = \pi * r^2
f®=π∗r2
这是矩形面积的数学公式:
f
(
a
,
b
)
=
a
∗
b
f(a, b) = a * b
f(a,b)=a∗b
我们看到这里有的有1个参数的,有的有两个的怎么变成高阶函数?
读者可以思考一会。
下面是代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/24 11:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : func_demo2.py
# @Project : hello
import math
def circle_area(r):
return math.pi * r * r
def rectangle_area(a, b):
return a * b
def area(x, linear, factor):
return x * linear(x, factor)
def relation(x, factor):
return x * factor
a = 10
b = 20
print("长方形面积:", rectangle_area(a, b))
print("圆形面积:", circle_area(a))
print("长方形面积:", area(a, relation, factor=b / a))
print("圆形面积:", area(a, relation, factor=math.pi))
结果如下图:
这只是一种解法。
从代码可以看到,我们把圆形和矩形都看作某一个参照物(半径/一条边)的平方,再成乘以一个系数。
下面,我们把正方形面积计算加上:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/24 11:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : func_demo2.py
# @Project : hello
import math
def circle_area(r):
return math.pi * r * r
def square_area(a):
return a * a
def rectangle_area(a, b):
return a * b
def area(x, linear, factor):
return x * linear(x, factor)
def relation(x, factor):
return x * factor
a = 10
b = 20
print("长方形面积:", rectangle_area(a, b))
print("正方形面积:", square_area(a))
print("圆形面积:", circle_area(a))
print("长方形面积:", area(a, relation, factor=b / a))
print("正方形面积:", area(a, relation, factor=1))
print("圆形面积:", area(a, relation, factor=math.pi))
上面的代码执行结果如下:
这就是高阶函数的神奇之处,我们从正方形的角度思考。
只用一个area函数和relation函数,这两个函数都不必修改,只需要给一个factor(经验因子),就能快速计算它的面积。
为何高阶函数能够降低维度
从上面距离的计算面积的函数,我们可以看到计算圆形和长方形,都能看成一个一维函数。
然后以正方形面积为参照物,快速估算出圆形和方形的面积。
当然上面的计算圆形面积采用了半径,还不够直观,读者可以自行改为直径,这样factor = math.pi / 4。
这样在感受上会更贴切。
总结
除了上面介绍的函数,参数,高阶函数。我们还可以使用lambda函数:
lambda 参数1, 参数2,。。。,第n个参数 : 计算表达式
上面的函数relation函数可以省略不写,最后调用改为:
print("长方形面积:", area(a, lambda x, f: x * f, factor=b / a))
print("正方形面积:", area(a, lambda x, f: x * f, factor=1))
print("圆形面积:", area(a, lambda x, f: x * f, factor=math.pi))
对了,喜欢Python的朋友,请关注学委的 Python基础专栏 or Python入门到精通大专栏
最后
不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~
给大家准备的学习资料包括但不限于:
Python 环境、pycharm编辑器/永久激活/翻译插件
python 零基础视频教程
Python 界面开发实战教程
Python 爬虫实战教程
Python 数据分析实战教程
python 游戏开发实战教程
Python 电子书100本
Python 学习路线规划
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!