一、数据类型
 
 1、数字类型
    python 的数字类型分为整型、长整型、浮点型、布尔型、复数类型
    返回变量类型
    i = 1
    print type(i)
    l = 99990
    print type(l)
    f=1.2
    print type(f)
    b=ture
    print type(b)

 2、字符串类型
    单引号、双引号、三引号
 
二、运算符和表达式

 1、算术运算符和算术表达式
    python 的运算符号包括赋值运算符、算术运算符、关系运算符和逻辑运算符
    赋值运算符为"=",表达式是将不同类型的数据(包括常量、变量、函数) 用运算符号
    按一定的规则连接起来的式子。
   
    python 的算术表达式具有结合性和优先性。结合性是指表达式按照从左往右、先乘除
    后加减的原则。优先级是指先执行圆括号内的表达式,再按照结合性的原则进行计算。

 2、关系运算符和关系表达式
   关系运算符是对两个对象进行比较的符号.
   <、<=、>、 >= 这4个运算符的优先级别相同, == 、!= 的优先级别相同. 而< 、<= 、
   >、>=的优先级别大于==、!=的优先级别

 3、逻辑运算符和逻辑表达式
    逻辑表达式是用逻辑运算符和变量连接起来的式子。
    逻辑运算符and or not 逻辑表达式 x and y   x || y  not x
    逻辑非的优先级大于逻辑与和逻辑或的优先级,而逻辑与和逻辑或的优先级相等。逻辑
    运算符的优先级低于关系运算符,必须计算关系运算符,然后再计算逻辑运算符.
 
 
三、条件语句
    python 中的控制台输入函数。 input()和raw_input()  raw_input捕获用户的原始输入
   
    input()支持用户输入数字或是表达式,不支持输入字符串。   
   
[root@study pp]# cat if.py
#!/usr/bin/python
a = input("please")
b = input("please")
if a > b :
    print a > b
else:
    print "a < b"
[root@study pp]#
[root@study pp]# cat if_elif.py
#!/usr/bin/python
num_1 = input("num_1:")
num_2 = input("num_2:")
if num_1  > num_2 :
    print "num_1 > num_2"
elif num_1 == num_2 :
    print "num_1 = num_2"
else:
    print "num_1 < num_2"
 
使用字典实现switch语句
[root@study pp]# vim switch.py 
#!/usr/bin/python
from __future__ import division
x = 1
y = 2
operator = "/"
result = {
"+" : x + y,
"-" : x - y,
"*" : x * y,
"/" : x / y
}
print result.get(operator)
   
   
循环语句
    循环语句是指重复执行同一个代码块。循环语句是由循环休及循环体及循环终止条件两部分组成
    一组被重复执行的语句称为循环体,循环的终止条件决定重复执行的次数。
   
 1、while 循环
    while (表达式):
    …… ……
    else:
    …… ……

#!/usr/bin/python
x = input("input number value or number expressions: ")
i = 0
while ( x <> 0 ):
    if x > 0 :
      x -= 1
    else:
     x += 1
    i = i + 1
    print "%d loop: " %i,x
else:
     print "x == 0 :", x
    
死循环    
i = 1
while i > 0 :
    i = i + 1
    print i

2、for 循环
for 变量 in 集合:
 …………
else:
 …………
    
集合可以是元组、列表、字典等数据结构。其中else子句可以省略

for ... in ... 循环通常与range() 函数一起使用,range() 返回一个列表, for ... in ... 遍历列表中的元素。
range() 函数的声明如下:
     range([start,]stop[,step])
     range()返回一个递增或递减的数字列表,列表的元素值由3个参数决定。
     参数start 表示列表开始的值,默认值为“0”
     参数stop 表示列表结束的值,该参数不可缺少。
     参数setp表示步长,每次递增或递减的值,默认值为“1”
     range() 返回一个递增或递减的数字列表,列表的元素值由以上3 个参数决定。如range(5, -1, -1) 返回的列表为[5,4,3,2,1,0]
#!/usr/bin/python
for x in range(-1,2):
    if x > 0:
      print "x > 0"
    elif x == 0 :
      print "x == 0"
    else:
      print "x < 0"
else:
  print "loop end."    

[root@study pp]# cat for_two.py
#!/usr/bin/python
x = 0
while x < 5 :
    print x
    x = x + 2
[root@study pp]#

[root@study pp]# cat for_three.py
#!/usr/bin/python
for i in range(0,5,2):
    print i
[root@study pp]# python for_three.py
0
2
4
[root@study pp]#          

3、break 和continue 语句
[root@study pp]# python break_for.py
please x value: 5
find x in the 0,100
[root@study pp]# python break_for.py
please x value: 500
not find x in the 0,100 !loop end
s
[root@study pp]# cat break_for.py
#!/usr/bin/python
x = input("please x value: ")
y = 0
for y in range(0,100):
    if x == y :
 print "find x in the 0,100"
 break
#    else:
#        print "not find x in the 0,100"
else:
    print "not find x in the 0,100 !loop end"
[root@study pp]#
continue 语句
  当程序执行到continue语句时,程序将转到下一次循环。break 语句会直接中断循环,
  而continue语句则是停止本次循环,进入下一次循环,循环语句并没有中止。
 
 
[root@study pp]# python continue.py
input x value : 5
x <> y  0
x <> y  1
x <> y  2
x <> y  3
x <> y  4
 x == y
[root@study pp]# cat continue.py
#!/usr/bin/python
x = input("input x value : ")
y = 0
for y in range(0,100):
    if x <> y :
 print "x <> y ",y
 continue
    else:
        print " x == y"
 break
[root@study pp]#

四、结构化程序示例
    xrange()的用法和range()相同,xrange()的声明如下所示:
    xrange([start,]stop[,step])
    xrange是一个类,而且返回的是一个xrange对象。使用xrange()进行遍历,
    每次遍历只返回一个值。range()返回的是一个列表,一次性计算并返回所有的值
    因此,xrange()的执行效率要高于range()
[root@study pp]# cat xrange.py
#!/usr/bin/python
x = xrange(0,8)
print x
print x[0]
print x[7]
[root@study pp]# python xrange.py
xrange(8)
0
7
[root@ns01 pp]# 

冒泡排序算法实现