因为工作项目需要,就开始学Python,一开始看习惯了C或者C++,再看Python是挺难受的,不过用了一段时间后也慢慢觉得Python并不是很难,基本语法不多,用途却十分的广泛。这篇文章也主要是针对小白,算是我入门过程的经验总结吧~
每个人学习Python的目的都不一样,有的人可能是因为其代码编写的精简性和平台的兼容性而入坑,也有的人可能是最近流行的大数据,云计算,爬虫等入的坑,无论如何,先了解Python,再往具体的方向去学习也不迟。
Python应该名为大蟒蛇的释义。他是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。注意,是因为无聊(手动狗头)。它是一种计算机程序设计语言,是一种动态的、面向对象的脚本语言。也就是说它是一门语言。
网络爬虫(又被称为网页蜘蛛),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。也就是说它是一个工具。
总结:因为python的脚本特性,python易于配置,对字符的处理也非常灵活,加上python有丰富的网络抓取模块,所以两者经常联系在一起。即简单理解就是爬虫是可以用Python写出来的一种脚本。
Python脚本,顾名思议,就是用Python语言写出来的一整段 python 程序,以.py结尾。
Python为脚本语言。这里的脚本即script,在计算机领域,Script仅指那种可直接运行的纯文本文件,而C、C++、Java这种需要编译生成二进制文件才可运行的语言不能称为脚本语言。所以Python文件的运行是动态地逐行解释运行,即从.py文件的第一行开始逐行运行。
正是Python拥有丰富的第三方库,所以Python语言也被称为胶水语言,它够作为万能的连接器,直接去调用各方大神编写好的功能API。
有了这强大的第三方库,不管你是要拿Python去做网络爬虫爬取数据,还是用Python来做数据清洗、分析、可视化等,统统只要几行代码就可以完成。所以写python时,没有很难实现的功能,只有相见恨晚的某个实现库~
想要能够写Python,运行Python,看到实质性的效果,环境搭建肯定少不了。这里主要搭建两个东西:
(1)打开python官网,找到下载地址:https://www.python.org/downloads/下载需要的版本,一般选择较新的版本~
这里有三个选择:
①web-based installer :是需要通过联网完成安装的。
②executable installer 是可执行文件(*.exe)方式安装。
③embeddable zip file 压缩档,就是python打包成zip压缩包,嵌入式版本,可以集成到其它应用中。
(为了方便,一般选择exe的那个~)
(2)下载完成当然就是安装,因为安装比较容易,只要安装时候注意把Add Python xx to PATH勾上和一些工具勾上即可,具体流程可以参考这篇文章:https://blog.csdn.net/u012106306/article/details/100040680
(3)最终判断有没有安装好,win+R,输入cmd,在cmd中输入Python,可以显示以下结果则安装正常。
如果显示命令不存在的话就是环境没配置好,那可以参考这篇文章:https://blog.csdn.net/zhang_csdn_/article/details
因为官方提供的开发环境不利于程序开发,Pycharm是一个挺不错的选择。该软件集成编辑,运行,调试于一体,可以有效提高开发效率。
官网软件下载地址(下载community版):
https://www.jetbrains.com/pycharm/download/#section=windows
该软件的安装也比较容易,具体安装流程参考这里:
https://blog.csdn.net/qq_34514415/article/details/80201769
看完这里,应该是可以正常新建一个工程,再新建一个a.py文件,可以正常地写Hello world了(本来新建一个工程是会自动生成main.c的,我把它变成a.c了)。
其他情况下,如果我们拿到一个多个.py文件,想要编译这些文件,我们可以直接双击打开该文件(以Pycharm方式打开),选择Run再点一次Run。
出现了这个东东,选择对应的py文件。
这时候右上角的这个框框右边的运行按钮亮了,也就是该文件可以正常运行了,但如果是多个文件的话,就需要有一个运行的主文件,选择edit configurations。
在script path选择对应需要运行的主py文件便可(一般我们的代码的结构运行都是从main文件运行),Python interpreter 是我们刚才安装的解释器,一般都不需要自己改变。
模块的导入用import,后面加文件名(不要加.py)。
import xxx
一般我们下载了python这个软件后,是有自带官方库的。比如,现在我们要获得电脑的时间,我们可以这么做:先导入datetime这个模块,这样我们就可以利用datetime这个对象去访问该模块所提供的所有方法和对象,这里调用了now()这个方法获得我电脑的时间,下面运行结果是2020-12-27…。
呃…至于为什么这么用,这是开发这个库的人所给的一个接口,直接用就是了。
import datetime本质其实是把datetime.py文件拷贝到该位置,举个例子,我们可以自己写个模块叫b.py,里面就打印一个b,把它import进来,运行a.py,看输出结果是:先打印b,再打印a。
所以我们所导入的模块都是一个个别人写好的.py文件罢了,但是你要是没找到自己想要的库,就需要第三方库导入了。外部导入也很容易,即用pip指令,快捷键win+R,输入cmd,输入:pip install pyserial, 我这里想使用串口,就导入一个pyserial包。注意:电脑要有网络才能下载哦~
这里提示黄色警告,说pip版本太老了,考虑到pip版本比较低的话有一些包下载不了,我们可以升级一下pip,用这条指令:python -m pip install --upgrade pip
一般我们第三方库导入的位置会自动放到我们python安装路径,这里是D:\Install\python38\Lib\site-package的文件夹里。导入后我们就可以在代码里import对应的模块啦。
在确定学习方向时,先学习语法吧,语法的学习直接菜鸟教程就足够了:https://www.runoob.com/python/python-tutorial.html
我认为的学习方法是,有语言基础的话学习python语法最好的一点就是有目的地去学,比如用到for循环时再去看看其语法怎么用,这样更记得住。没语法基础的话就边学边用吧,做做一些小东西,这样学起来才有意思。
有了最最基础的语法,就可以确定要学习的方向了,即百度自己要学的方向需要什么工具,什么模块,了解什么内容之类的。这里转载了一些可能需要学习的库。
第三方库:
转载: https://www.cnblogs.com/jiangchunsheng/p/9275881.html
1、Requests Kenneth Reitz写的最富盛名的http库。每个Python程序员都应该有它。
2、Scrapy 如果你从事爬虫相关的工作,那么这个库也是必不可少的。用过它之后你就不会再想用别的同类库了。
3、wxPython Python的一个GUI(图形用户界面)工具。我主要用它替代tkinter。你一定会爱上它的。
4、Pillow 它是PIL(Python图形库)的一个友好分支。对于用户比PIL更加友好,对于任何在图形领域工作的人是必备的库。
5、SQLAlchemy 一个数据库的库。对它的评价褒贬参半。是否使用的决定权在你手里。
6、BeautifulSoup 我知道它很慢,但这个xml和html的解析库对于新手非常有用。
7、Twisted 对于网络应用开发者最重要的工具。它有非常优美的api,被很多Python开发大牛使用。
8、NumPy 我们怎么能缺少这么重要的库?它为Python提供了很多高级的数学方法。
9、SciPy 既然我们提了NumPy,那就不得不提一下SciPy。这是一个Python的算法和数学工具库,它的功能把很多科学家从Ruby吸引到了Python。
10、matplotlib 一个绘制数据图的库。对于数据科学家或分析师非常有用。
11、Pygame 哪个程序员不喜欢玩游戏和写游戏?这个库会让你在开发2D游戏的时候如虎添翼。
12、Pyglet 3D动画和游戏开发引擎。非常有名的Python版本Minecraft就是用这个引擎做的。
13、pyQT Python的GUI工具。这是我在给Python脚本开发用户界面时次于wxPython的选择。
14、pyGtk 也是Python GUI库。很有名的Bittorrent客户端就是用它做的。
15、Scapy 用Python写的数据包探测和分析库。
16、pywin32 一个提供和windows交互的方法和类的Python库。
17、nltk 自然语言工具包。我知道大多数人不会用它,但它通用性非常高。如果你需要处理字符串的话,它是非常好的库。但它的功能远远不止如此,自己摸索一下吧。
18、nose Python的测试框架。被成千上万的Python程序员使用。如果你做测试导向的开发,那么它是必不可少的。
19、SymPy SymPy可以做代数评测、差异化、扩展、复数等等。它封装在一个纯Python发行版本里。
20、IPython 怎么称赞这个工具的功能都不为过。它把Python的提示信息做到了极致。包括完成信息、历史信息、shell功能,以及其他很多很多方面。一定要研究一下它。
这篇文章先介绍了python,再说明了怎么使用python,最后简单说了下学习python的一个先后顺序。