1为什么学习python
我个人是从大四进入实验室的时候才开始接触python,大一到大三完全没有任何基础,虽然我的专业是CS,但是我是属于“学霸”类型,只学了老师讲课的东西....从我进实验室这么久,我和身边的人用python主要是下面几点。
1、python是脚本语言,作为程序员我觉得至少应该掌握一本通用脚本语言,因为脚本语言与编译语言的开发测试过程不同,可以极大的提高编程效率。
2、我目前在做自然语言处理,对外宣传都是号称人工智能上的明珠,哈哈,现在NLP基本上已经被深度学习全面攻陷,所有的深度学习库,目前python语言是支持的非常好的。
3、最重要的一点,python非常简单易学啊啊啊啊!!!!
2该不该系统学习python
之前我学习python,是看了几篇博客之后,就直接上手了,很多基本的语法和用法没有概念。
比如之前我的一个需求是,在深度学习中的memory network最后输出一个7分类的结果,用list列表保存,我想得到它的最大值的索引index。
这个时候我就困惑了,当然你可以直接对这个list进行扫描一遍,然后记录最大值和对应的list,代码如下:
import math
softmax_res = [1, 2, 3, 4, 10, 9, 7]
max_value, max_index = -math.inf, -1
for index, value in enumerate(softmax_res):
if value > max_value:
max_value = value
max_index = index
print("max_value = {0}, corresponding_index = {1}".format(max_value, max_index))
ok 其实到这里已经解决问题了,但是心里总感觉不舒服,一个这么简单的功能,需要写这么长吗???
python中对这种找index应该有支持的方法吧,于是我去问了google,果然一个优雅的方法来了,代码如下:
softmax_res = [1,2,3,4,10,9,7]
max_index = softmax_res.index(max(softmax_res))
print("max_value = {0}, corresponding_index = {1}".format(max(softmax_res), max_index))
我们可以看到代码变得非常简单易懂起来,主要的区别就在于我们是否了解或者对list的max()和index()方法有过任何的印象,没有对这些基础知识有过任何印象的,在碰到需求的话是很难能够想到简单的方法去做的。
所以我的意见是python如果在你有时间,打基础的时候对于一些基本知识是有必要系统的学习过一遍的,正好前段时间在老朋友石头抽奖中了一本python基础教程的书籍,打算好好整理一下,也正好推荐一下极客的python入门基础课程,正好他们到9号之前做活动。 课程面向对象是编程新人、编程爱好者和希望转向 Python 编程的工程师。原价199,预售期优惠价 99,扫码购买返现 12 元。祝学得开心:)
推荐阅读:
入门 | 始于Jupyter Notebooks:一份全面的初学者实用指南
【5月送书活动】10本深度学习,强化学习相关书籍
【机器学习基本理论】详解最大后验概率估计(MAP)的理解