初始python
一、学前准备
对于一个小白来说,我推荐一本书,适合初学者,我个人觉得内容简单易懂,又能很好的带着我们入门python,书名叫《简明python教程》。
对于为什么要选python,我在这里不打算写一些虚空的python吹捧之词,我觉得两个原因足以让自己坚持下去:兴趣+钱多(前景好)!
另外,就是对于初次接触python的童鞋,在这里说一下python的种类:
- Cpython
- Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。
- Jyhton
- Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
- IronPython
- Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)
- PyPy(特殊)
- Python实现的Python,将Python的字节码字节码再编译成机器码。
- RubyPython、Brython ......
接下来的日子,我们主要在pypy上下功夫。why?因为PyPy是在Python的基础上对Python的字节码进一步处理,从而提升执行速度!
然后一张图说明一下学习态度的问题:(图是从群里粘过来的,至于发图人从哪里搞的就不晓得了,O(∩_∩)O哈哈~)
二、环境搭建
1、Windows系统环境的安装
大多数人应该用的是Windows操作系统,Windows上安装软件也特别简单,在www.python.org官网上把Windows版的python2.7和python3.5安装包下载下来点击安装就OK了,这里需要强调的是,在安装过程中需要把python的安装路径粘贴到PATH环境变量中。
配置环境变量:
【右键计算机】
-
-
》【属性】
-
-
》【高级系统设置】
-
-
》【高级】
-
-
》【环境变量】
-
-
》【在第二个内容框中找到 变量名为Path 的一行,双击】
-
-
> 【Python安装目录追加到变值值中,用分号;分割】
如:系统原有的值;C:\python27,切记前面有分号
我这里是把它装到E盘了,所以在原有默认的路径后加了我的安装路径。
2、Linux系统环境的安装
Linux系统中自带有python软件,但是是2.6版本的,需要升级到2.7(先用python-v查看一下自己系统中python的版本。)
(1)从官网下载python安装包(这个版本可以是任意版本3.3 2.7 2.6等等)
wget http://python.org/ftp/python/2.7/Python-2.7.tar.bz2
(2)解压并安装
- [root@tina ~]# tar -jxvf Python-2.7.tar.bz2
- [root@tina ~]# cd Python-2.7
- [root@tina Python-2.7]# ls
- [root@tina Python-2.7]# ./configure
- [root@tina Python-2.7]# make all
- [root@tina Python-2.7]# make install
- [root@tina Python-2.7]# make clean
*注:make clean 这一步可以不执行,执行后的结果如下:
"""find . -name '*.py[co]' -exec rm -f {} ';'
find . -name '*.o' -exec rm -f {} ';'
find . -name '*.s[ol]' -exec rm -f {} ';'
find build -name 'fficonfig.h' -exec rm -f {} ';' || true
find build -name 'fficonfig.py' -exec rm -f {} ';' || true
rm -f Lib/lib2to3/*Grammar*.pickle
"""
(3)更改系统默认路径
- [root@tina Python-2.7]# /usr/local/bin/python2.7
系统的默认python放置在/usr/bin/python2.6处(这个2.6是系统默认版本)
所以我们在升级版本后需要建立软连接指向当前系统默认的python目录处,让系统使用新的python版本
- [root@tina ~]# mv /usr/bin/python /usr/bin/python2.6
- mv: overwrite `/usr/bin/python2.6'? y ==>对系统默认版本python进行操作
- [root@tina ~]# ln -s /usr/local/bin/python2.7 /usr/bin/python ==>第一个路径是新安装的python版本路径,而第二个路径是系统默认路径
- [root@tina ~]# python -V ==>Python 2.7当前版本
PS:
a、修改了新的python版本,那么原先安装的python插件都不在新版本python目录下,因此需要重新安装
b、有些人更新了python版本无法使用yum,需要为yum修改它的配置文件
(4)修改yum源的头部注释
- [root@tina ~]# vim /usr/bin/yum ==> 将文件头部的#!/usr/bin/python改成#!/usr/bin/python2.6(防止yum执行异常,修改yum使用的Python版本)
三、牛刀小试
环境搭建好了以后,我们就可以随心所欲的折腾了,虽然此刻我们还知道的不多,然而却有一颗不怕犯错的心呀,开启错误中前进之路!吼吼~
1、编写今生第一段小代码:hello world!
在还没有安装IDE时,我们可以写在notepad++记事本里,当然还有其他的高大上的编辑器,选哪个都行,随意。
#!/usr/bin/env python #-*- coding:utf-8 -*- #author:tina print("hello world!")
码完上面代码后,保存并复制下文档保存路径,打开Windows中的cmd,输入python E:\python\hello.py (根据自己文档的实际保存路径)执行代码文件。
正确的执行结果应该是下图中的:
当然,也有不顺利的时候,比如报错如下图:
2、编写第二个小代码:连续输出数字
新建一个文档,连续输出1-10
import time
start = 1 flag = True while flag: print(start) if start == 10: flag = False start = start + 1 time.sleep(1) print("end")
当然有更精简的写法,思路不同,结果一样就行,优秀代码可以借鉴:
i = 0 while i<10: i += 1 print(i)
正确的输出结果应该如下图:
而我们要关注不顺利执行时的报错,如下图:
在这里解释下第二个常见报错,IndentationError: unexpected indent,这个错误很常见,是缩进错误,看到IndentationError就要马上返回代码行检查代码缩进是否一致。
3、写代码时的小技巧(—*—其实也算不上技巧啦—*—):
- 一个等号是赋值,两个等号是比较
- 缩进:默认四个空格
- 执行Python代码时,如果导入了其他的 .py 文件,在执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。(代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。)
- 解释器执行python程序经过哪几个阶段:加载内存、词法分析、语法分析、编译 --> 字节码,执行字节码,机器码
- ASCII(8位)、UNICODE(最少16位)、UTF-8(根据实际进行调整)
- 注释有两种 单行和多行(#和"""都表示注释,但是#表示注释一行代码,""" """代码注释多行代码。)
- 捕捉脚本参数 用sys.argv (需要导入sys模块)
- 变量声明有三个规则:
-
a.只能有字母大小写、下滑线、数字; b.变量名的第一个位置不能是数字; c.避免使用python的关键字,系统内置关键字不要使用:
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- C语言里没有字符串,所以Python的字符串不改变
四、通过一些需求学习流程控制语句
1、求1-100的所有数的和
2、输出1-100内的所有奇数
3、输出1-100内的所有偶数
4、求1-2+3-4+5...99的所有数的和
5、用户登录(三次机会重试)