1.1安装Python
前文已经介绍,这里不赘述,前文已经介绍了在windows7的配置
配置完成后输入命令 “python” ,得到以下信息
Python 2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>
当输入“python”时会出现以上信息,交互式解释器相信大家都不陌生了,如果使用过Linux,那么交互式的思想你已经相当具备了,交互式按我的理解,就是人和机器的一问一答模式,你输入一个指令,机器告诉你相应的信息。
来吧,打印python下的 "Hello,World!"
Python 2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)] on win32你没有看错,就是一行, print "Hello,World!",没有头文件,没有标准输入输出,没有main函数,python就是这么任性
Type "copyright", "credits" or "license()" for more information.
>>> print "Hello,World!"
Hello,World!
>>>
1.3 算法是什么
关于算法的概念就不解释了吧,估计你想吐了吧
1.4 数字和表达式
不废话,直接运行实例
Python 2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)] on win32前面两个加法不解释, 在3.0版本之前1/2是整数除法,即1/2==0
Type "copyright", "credits" or "license()" for more information.
>>> 2 + 2
4
>>> 53672 + 235253
288925
>>> 1/2
0
>>> 1.0/2.0
0.5
>>>
如果想要得到0.5这个结果,可以利用浮点数的特性
如下
Python 2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 2 + 2
4
>>> 53672 + 235253
288925
>>> 1/2
0
>>> 1.0/2.0
0.5
>>> 1.0/2
0.5
>>> 1/2.
0.5
>>>
>>> 1//2
0
>>> 1.0//2.0
0.0
>>>
>>> 10/3
3
>>> 10%3
1
>>> 9/3
3
>>> 9%3
0
>>> 2.75%0.5
0.25
>>>
>>> 2**3
8
>>> -3**2
-9
>>> (-3)**2
9
>>>
python可以处理非常大的整数,而大家知道,在C/C++进行大数运算,可能需要借助字符串进行转换,自己编写函数的话,代码量还是有的,而python可以很快捷地处理大数运算。
>>> 123456789101112131415161718192021*12345678901011121314151617181920被吓到了吧,谁说不是呢,而可以想象C++大整数乘法的代码量,是不是觉得python方便多了
1524157876392179798183044712001221195380805499108933421449460320L
>>>
1.5 变量
没啥好说的,看段小代码
>>> x=3注意:变量名可以包括字母、数字和下划线(_)。变量不能以数字开头,所以Plan9是合法变量名,而9Plan不是
>>> x * 2
6
>>>
1.6语句
也不废话,运行实例
>>> x=3注意:在python3.0中,print是函数,打印42,需要写成print(42),而不是print 42
>>> x * 2
6
>>> x=3
>>> print x
3
>>> 2 * 2
4
>>> print 2*2
4
>>>
1.7获取用户输入
运行实例,注意“input”的用法
>>> input("The meaning of life:")
The meaning of life:42
42
>>> x = input("x: ")
x: 34
>>> y = input("y: ")
y: 42
>>> print x * y
1428
>>>
幂运算函数pow
>>> 2**3
8
>>> pow(2,3)
8
>>> 10 + pow(2,3.5)/3.0
13.771236166328254
>>> 10 + pow(2,3*5)/3.0
10932.666666666666
>>>
>>> abs(-10)
10
近似值函数 round
>>> 1/2
0
>>> round(1/2)
0.0
>>> round(1.0/2.0)
1.0
>>>
可以把模块想象成导入到Python以增强其功能的扩展。按照“模块.函数”格式使用这个模块的函数。
实例如下
>>> import mathmath.floor将32.9转化为整数32
>>> math.floor(32.9)
32.0
import命令的另外一种形式
>>> import math前提是不会导入多个同名函数的情况下,不希望每次都写模块名,可以这样使用,建议使用第一种形式
>>> math.sqrt(9)
3.0
>>> from math import sqrt
>>> sqrt(9)
3.0
1.10 保存并执行程序
使用编辑器如EditPlus,编写一段python代码,以.py后缀名结尾
如在E盘根目录下有一个 Hello.py
内容如下
print "Hello,World!"在cmd中到达E盘根目录下,运行 python HelloWorld.py,结果如下
python HelloWorld.py
Hello,World!
下一个实例,对脚本进行扩展
HelloWorld.py内容如下
print "Hello,World!"
name = raw_input("What is your name? ")
print 'Hello. ' + name + '!'
E:\>python HelloWorld.py
Hello,World!
What is your name? Nick
Hello. Nick!
1.10.3注释
井号(#)在Pyhon中有注释的作用
>>> #打印圆的周长
>>> print 2 * 3.1415926 * 2
12.5663704
>>> #获得用户名>>> user_name = raw_input("What is your name?")What is your name?Tom
1.11字符串
>>> "Hello,World!"
'Hello,World!'
>>> print "Hello,World!"
Hello,World!
不解释,看运行实例来体会区别
>>> "Hello,World!"Python会明白中间的单引号是字符串中的一个字符,而不是字符串的结束标记。
'Hello,World!'
>>> "Let's go"
"Let's go"
>>> '"Hello,World!" she said'
'"Hello,World!" she said'
>>> 'Let's go' #这里发生了错误
<span style="color:#ff0000;">SyntaxError: invalid syntax</span>
>>> 'Let\'s go' #这里用"\"转义,避免歧义
"Let's go"
1.11.2 拼接字符串
>>> "Hello." + "World!"
'Hello.World!'
>>> x = "Hello."
>>> y = "World!"
>>> x + y
'Hello.World!'
1.11.3 字符串表示,str和repr
>>> "Hello, world!"
'Hello, world!'
>>> 10000L
10000L
>>> print "Hello,world!"
Hello,world!
>>> print 10000L
10000
>>> print repr("Hello,world!")#repr函数,创建一个字符串,以合法python表达式形式表示值
'Hello,world!'
>>> print repr(10000L)
10000L
>>> print str("Hello,world!")#str函数,把值转换为合理形式的字符串
Hello,world!
>>> print str(10000L)
10000
1.11.4 inpu和raw_input的比较
运行一个实例
>>> input("Enter a number: ")注意:除非对input有特别的需要,否则应该尽可能使用raw_input函数
Enter a number: 3
3
>>> raw_input("Enter a number: ")#raw_input函数会把所有的输入当作原始数据(raw data),然后将其放入字符串中
Enter a number: 3
'3' #这边是‘3’
1.11.5 长字符串,原始字符串和Unicode
1.长字符串 使用三个引号代替普通引号
>>> print '''This is a long string2.原始字符串
It contains here....."Hello,World!"...'''
This is a long string
It contains here....."Hello,World!"...
>>> print 'Hello.\nworld'原始字符串以r开头
Hello.
world
>>> print 'Hello.\nworld' #\n换行符
Hello.
world
>>> path = 'C:\nowhere' <span style="color:#ff0000;">#这里表示C盘下一个目录nowhere</span>
>>> path
'C:\nowhere' <span style="color:#ff0000;">#这边没啥问题</span>
>>> print path <span style="color:#ff0000;">#结果发生了问题</span>
C:
owhere
>>> print 'C:\\nowhere'<span style="color:#ff0000;">#利用引号进行转义</span>
C:\nowhere
>>>
>>> print r'C:\nowhere'
C:\nowhere
>>> print r'Let's go'
SyntaxError: invalid syntax
>>> print r'Let\'s go'
Let\'s go
3.Unicode字符串
>>> u'Hello,world!'
u'Hello,world!'
>>> #注意,在Python3.0中,所有字符串都是Unicode字符串
1.12.1 本章的新函数
abs(number) #返回数字的绝对值
cmath.sqrt(number) #返回平方根,也可以适用于复数
float(object) #将字符串和数字转换为浮点数
help() #提供交互式帮助
input(prompt) #获取用户输入
int(object) #将字符串和数字转换为整数
long(object) #将字符串和数字转换为长整型数
math.ceil(number) #返回数的上入整数,返回值的类型为浮点数
math.floor(number) #返回数的下舍整数,返回值的类型为浮点数
math.sqrt(number) #返回平方根,不适用与负数
pow(x,y[,z]) #返回x的y次幂(所得结果对Z取模)
raw_input(prompt) #获取用户输入,结果被看作原始字符串
repr(object) #返回值的字符串表示形式
round(number[,ndigits]) #根据给定的精度对数字进行四舍五入
str(object) #将值转化为字符串</strong></span>