Python是一种功能很强大的语言,对于零基础学习Python还是有难度的,但只要学习方法对,入门还是很快哒。下面介绍几种学习Python的方法。以下是小编为你整理的如何学好python编程
首先是书籍,通过书籍学习,虽然速度会有些慢,但知识具体,可以掌握很多细节,一旦入门后,后面进步就很快了,下面介绍给大家一本书,是以前我学习Python时用的书,感觉还挺不错哒。
然后就是借助网络学习,网上有很多视频课程,而且有很多是免费哒,网络视频比较直观,入门快。给大家推荐一个视频,网易云课堂里有个零基础入门学习python的视频,是免费的,我之前也看过,挺不错哒
还有就是加一些qq群或是论坛,里面的知识虽然不全面,但对于知识的扩宽还是很有帮助哒。
*说说我的学习经验,书籍学习的方法比较扎实,网络视频学习的方法入门比较快,论坛可以作为知识的补充渠道,当然,如果想学精,唯有多多实践一条途径。
优点是什么
Python世界最棒的地方之一,就是大量的第三方程序包。同样,管理这些包也非常容易。按照惯例,会在 requirements.txt 文件中列出项目所需要的包。每个包占一行,通常还包含版本号。这里有一个例子
Python 程序包有一个缺陷是,它们默认会进行全局安装。我们将要使用一个工具,使我们每个项目都有一个独立的环境,这个工具叫virtualenv。我们同样要安装一个更高级的包管理工具,叫做pip,他可以和virtualenv配合工作。
首先,我们需要安装pip。大多数python安装程序已经内置了easy_install(python默认的包管理工具),所以我们就使用easy_install pip来安装pip。这应该是你*一次使用easy_install 了。如果你并没有安装easy_install ,在linux系统中,貌似从python-setuptools 包中可以获得。
如果你使用的Python版本高于等于3.3, 那么Virtualenv 已经是标准库的一部分了,所以没有必要再去安装它了。
下一步,你希望安装virtualenv和virtualenvwrapper。Virtualenv使你能够为每个项目创造一个独立的环境。尤其是当你的不同项目使用不同版本的包时,这一点特别有用。Virtualenv wrapper 提供了一些不错的脚本,可以让一些事情变得容易。
当virtualenvwrapper安装后,它会把virtualenv列为依赖包,所以会自动安装。
打开一个新的shell,输入mkvirtualenv test 。如果你打开另外一个shell,则你就不在这个virtualenv中了,你可以通过workon test 来启动。如果你的工作完成了,可以使用deactivate 来停用。
循环语句的应用
举个例子如果我们要生产一个list [1,2,3,4,5,6,7,8,9,10] 我们可以使用range(1,11)来表示,如果直接写range(11) 是从0开始,我们可以演示一下。print range(11)print range(1,11)print range(8,11)
然后我们想一下 如果要表示[1*1,2*2,3*3,4*4.....100*100]要怎么做呢?好肯定是要利用到循环的概念,正常的写法是这样的:
a = [] #定义一个空的列表for x in range(1,101): #假设X在从1开始循环到100 a.append(x * x) # 进行一次添加操作 x* xprint a
作为一个程序员,就要是使用最短的代码*效的完成程序表达的功能,如果使用循环写的话会感觉比较繁琐,特别是逻辑能力不太强的朋友,我们可以使用一行语句代替循环,我们测试看看
print [x * x for x in range(1,101)]
当然除了计算之外,我们还可以做一些比较特殊的字符串操作,比如:
print [m + n for m in 'ABC' for n in 'XYZ']
我们可以看到我们把A B C 都加了一遍XYZ 如果要用正常的循环也是可以完成的就是了,这样的操作更加简单便捷。
学python有什么条件
开发环境准备,这里我选用Visual Studio 2017作为Python的开发工具,要求在Visual Studio中安装Python环境支持
在进行机器学习开发时我们需要给python环境安装所需要的外部依赖包
sklearn,numpy,spicy
引入sklearn包,创建数据特征模型
from sklearn import tree
#特征模型数据,[身高,胡子] 1-有 0-无
feature =[[178,1],[155,0],[180,1],[166,0],[168,1],[152,0]]
#特征标签值
label=['male''female','fale','female','fale','female']
我们采用决策树进行分类预测
#创建一个决策树对象
clf = tree.DecisionTreeClassifier();
#将特征数据交个决策树进行判断
clf = clf.fit(feature,label)
进行新的数据预测
#预测一组新的数据
clf.predict([[158,0]])
clf.predict([[190,1]])
完成的Python的代码如下:
from sklearn import tree
#特征模型数据,[身高,胡子] 1-有 0-无
feature =[[178,1],[155,0],[180,1],[166,0],[168,1],[152,0]]
#特征标签值
label=['male','female','fale','female','fale','female']
#创建一个决策树对象
clf = tree.DecisionTreeClassifier();
#将特征数据交个决策树进行判断
clf = clf.fit(feature,label)
#预测一组新的数据
r1=clf.predict([[158,0]])
print("Data[158,0] is label for:")
print(r1)
r2=clf.predict([[190,1]])
print("Data[190,1] is label for:")
print(r1)