1. 安装python绝大多数的linux系统中已经安装了python,我们可以直接在shell中输入python来进行验证,如下:

[root@ceshi ~]# python
Python 2.6.6 (r266:84292, Nov 22 2013, 12:11:10) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>                  /如果想要退出编辑器直接用ctrl+d 
[root@ceshi ~]#

如果没有安装编辑器,我们可以采用源码安装大方法。

[root@ceshi ~]# cd /usr/local/src
[root@ceshi src]# wget 
[root@ceshi src]# tar zxvf Python-2.6.6.tgz 
[root@ceshi src]# cd Python-2.6.6
[root@ceshi src]# ./configure  --profile=/usr/local/python
[root@ceshi src]# make
[root@ceshi src]# make install
[root@ceshi src]# export PATH=$PATH:/usr/local/python  /把python命令放入PATH路径中。

2. python交互式解释器,直接输入python,打印出“hello python!”

[root@ceshi ~]# python
Python 2.6.6 (r266:84292, Nov 22 2013, 12:11:10) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print "Hello.world"
Hello.world
>>>

print就是打印的意思,这句话的意思就是在python交互解释器中打印出“Hello。world”。

3. 变量

    变量基本上就是代表(或引用)某值的名字。我们可以设置如下变量:

>>> x = 3        /由这两个变量,我们可以发现python变量定义与shell基本相同,只是shell中
>>> print x      /“=”号两侧不能有空格,而python用不用都可以;python变量在引用时直接
3                /直接引用即可,而shell中则需要添加美元符号。
>>> y=6
>>> print y
6
>>>

同样的,变量名可以是数字,字母,下划线,但是变量名不能以数字开头。

4. 和用户进行交互,在写程序的时候,有时侯我们需要在程序执行过程中用户输入一些字符。

>>> input(" The meaning of life: ")
 The meaning of life: 45        /用户输入字符,然后回车,英文语句在这里就是代表提示符
45
>>>

接下来我们做一个小计算:

>>> x=input("x:")
x:34                       /“x:”表示提示符
>>> y=input("y: ")
y: 43
>>> print x*y
1462
>>>

5. 函数 

    就像小程序一样,可以用来实现特定的功能。python有很多函数,他们能做很巧妙的事情,当然我们也可以自己定义函数,python也拥有很多的内建函数。

    

>>> 2**3
8
>>> pow(2,3)     /这个局势幂函数,
8
>>> 

>>> abs(-132)    /绝对值函数
132

>>> 1.0/2
0.5
>>> round(1.0/2)  /四舍五入函数
1.0

整数除法总是会截除结果的小数部分,而round函数则会将结果四舍五入为最接近的整数。但是我们有这样一个需求,如果一个人的年龄为32.9岁,但是我们想把它取整为32岁,因为他还没有到33岁,这时候我们就需要用到floor函数。

6. 模块

    可以把模块想象成导入到python以增强其功能的扩展。需要使用特殊命令import来导入模块。

>>> import math
>>> math.floor(32.9)
32.0
>>> 

>>> math.ceil(34.5)   /把给定的值转换为大于或等于它的最小整数。
35.0

用法:用import导入函数,然后按照“模块.函数”的格式使用这个模块的函数。

>>> int (math.floor(32.9))    /可以使用整型int函数,把浮点型数据转换为整型。
32

在确定自己不会导入多个同名函数(从不同的模块导入)的情况下,我们可以这样使用模块。

>>> from math import sqrt  /使用了from模块import函数之后,就可以直接使用函数,而不用模块名做前缀
>>> sqrt (9)     /开方函数
3.0

另外我们也可以使用变量来引用函数,如下:

>>> foo=sqrt         /接上一步的环境
>>> foo(25)
5.0
>>> sqrt (-25)      /给一个负数开方,会发现出错,这时候我们要用到复数的概念
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: math domain error

调用复数所使用的模块cmath。在这个模块下我们可以进行虚数的运算。

>>> import cmath
>>> cmath.sqrt(-25)
5j
>>> 

>>> (1+3j)*(7-8j)    /进行虚数的运算
(31+13j)
>>>

6. 字符串

    python打印字符时,使用单引号和双引号的作用是一样的。如下:

>>> "hello.world"
'hello.world'
>>> 'hello.world'
'hello.world'

但是当打印的字符里面出现有单引号或者双引号时就会不一样。

>>> "let's go"
"let's go"


>>> 'let's go'              /使用单引号就会报错,此时python不会识别第二个单引号后面的字符
  File "<stdin>", line 1
    'let's go'
         ^
SyntaxError: invalid syntax

>>> 'let\'s go'              /但是我们可以使用转义字符,来进行转义。转义字符就是(\)
"let's go"
>>>

    python拼接字符,如下:

>>> x="Hello. world"
>>> y="let's say"
>>> y+x                          /“+”号就是拼接字符。
"let's sayHello. world"
>>>

    字符串表示。

str和repr实际上就是把数值转化为字符串。str和long,int一样是一种值的类型,表示字符型。而repr则是一种函数,它会创建一个字符串。repr(x)也可以写作`x`(这里是反引号)。

>>> print repr("Hello.world")
'Hello.world'
>>> print str("Hello.world")
Hello.world
>>>

如下一个例子:

>>> tmp=43
>>> print "The temperature is " + tmp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: cannot concatenate 'str' and 'int' objects
>>> print "The temperature is " + `tmp`
The temperature is 43
>>>

第一个print语句中因为tmp的值是数字类型,因此不能和进行字符串和数字的相加。第二个我们通过repr函数,把数字类型的值转化为了字符型,因此可以相加。

    input函数和raw_iput函数:

input函数会假设用户输入的是合法的python表达式,而raw_input函数会把所有的输入当作是原始的数据。

>>> raw_input("Enter a number: ")
Enter a number: 3
'3'
>>> input("Enter a number: ")
Enter a number: 3
3
>>>

    长字符串:假设一个字符需要占用三行,我们可以采取如下的表示方法:

>>> print '''This is a very long string
... it continues here
... And it's not over yet'''
This is a very long string
it continues here
And it's not over yet
>>>

三个单引号也可以环卫三个双引号。在这种字符内可以同时使用单引号和双引号,而不用转义。

>>> print "Hello \
... world"
Hello world
>>>

普通字符也是可以跨行的,如果一行之中最后一个字符是反斜线,那么,换行符本身就是转义的,也就是被忽略了!

    原始字符串:原始字符串就是不会进行转义,就是把你输入的字符串原始不动的打印出来。

>>> print "hello.\nworld"    /如果不加原始字符串,输出结果是这样的!
hello.
world

>>> print r"hello.\nworld"   /加上原始字符串r,后输出的就是原始字符串。
hello.\nworld
>>> 

>>> print r "hello.\nworld"   /注意r的位置,紧接着字符串,否则会出错。
  File "<stdin>", line 1
    print r "hello.\nworld"
                          ^
SyntaxError: invalid syntax