----------------------------------------------------------------------------------1
官方介绍:Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。
创造者:Guido van Rossum。
它的特色:简单、易学、免费、开源、高层语言、可移植性、解释性、面向对象、可扩展性、可嵌入性、丰富的库。
我认为它最大的特色是安装文件小,您可以去官方网站上下载for windows用户的最新版本3.1.2,文件大小为13.4MB。安装很简单,双击一下安装文件python-3.1.2.msi,一路next下去即可。系统菜单栏会有如下几项:
IDLE是内置的简单开发工具,可以是命令行,也可以编辑一个py文件,按F5运行。
Python Manuals是用户手册,里面提供Python的相关资料,您可以通过阅读它来学习Python。
我的第一个命令行程序:
我的第一个py文件:点击File->New Windows,打开新窗口,可以开始编写代码了,保存代码后,点击Run->Run Module或按快捷键F5,即可看到运行结果。
简单体验结束。未来会继续了解更多内容。
----------------------------------------------------------------------------------2
1. 常量
Python的常量不同于C#的常量,Python常量没有一个名字的。例如2,1.5,1.2e-3等这样的数,或者'This is a string',"It's a string"等这样的字符串。不像C#需要用const关键字来标识。
2. 数
Python有4中类型的数:整数、长整数、浮点数和复数。例子:
* 整数:2
* 长整数:65535等大一些的整数
* 浮点数:1.2,1.2e-3,e是10的幂,1.2e-3表示1.2*10-3
* 复数:(-5+4j),(1.2+2.3j)
3. 字符串
Python没有char类型,单引号和双引号是完全相同的意思。例子:
* 单引号:'Quote me on this'
* 双引号:"Waht's your name"
* 三引号:'''This is the first line.
This is the second line.'''
或者
"""What's your name?
My name is known."""
* 转义符:'What\'s your name?'
* 自然字符串:用r或R开头,r"Hello world!\n"
4. 变量
标识符命名规则:
* 首字符为字母(大小写均可)或为下划线(_)
* 其他部分字符为字母(大小写均可)、数字、下划线
* 区分大小写,myname与myName是两个不同的变量
5. 数据类型
Python基本的数据类型就是数和字符串,高级一点的类型就是类。
6. 对象
Python把所有东西都看成是对象,它把2这个数都看成是对象。
7. 逻辑行与物理行
物理行是您在编辑器中所看见的。逻辑行是Python能够识别的。一般,Python认为一个物理行对应一个逻辑行。
如果您要在一个物理行使用多个逻辑行,那么就要用分号(;)分割开,分号表示一个逻辑行或语句的结束。我们建议不要这样写,可读性差。
例子:i = 5;print(i)
相当于
i = 5
print(i)
如果您要在多个物理行中写一个逻辑行,那么你用反斜杠(\)来连接。
例子:s = "This is a\
string"
相当于
s = "This is a string"
8. 缩进
缩进在Python中试重要的。行首的空白是重要的,例子:
print("Hello")
print("world")
第二个print语句会报错,因为它前面有一个错误的空白。
同意层次的语句必须有相同的缩进。
不要混合使用空白和制表符,这样在不同平台中将无法工作。
强烈建议在缩进时,使用单个制表符或两个或四个空格。本人建议一如既往地使用四个空格。
----------------------------------------------------------------------------------3
1. 运算符
运算符 | 名称 | 说明 | 例子 |
+ |
加 |
两个对象相加 |
3 + 5得到8。"a" + "b"得到"ab"。 |
- |
减 |
得到负数或是一个数减去另一个数 |
-5.2得到一个负数。50 - 24得到26。 |
* |
乘 |
两个数相乘或是返回一个被重复若干次的字符串 |
2 * 3得到6。"la" * 3得到"lalala"。 |
** |
幂 |
返回x的y次幂 |
3 ** 4得到81(即3 * 3 * 3 * 3)。 |
/ |
除 |
x除以y |
4 / 3得到1(整数的除法得到整数结果)。4.0 / 3或4 / 3.0得到1.3333333333333333 |
// |
取整余 |
返回商的整数部分 |
4 // 3.0得到1.0 |
% |
取模 |
返回除法的余数 |
8 / 3得到2。-25.5%2.25得到1.5 |
<< |
左移 |
把一个数的比特向左移一定数目(每个数在内存中都表示为比特或二进制数字,即0或1) |
2 <<2 得到8。——2按比特表示10 |
>> |
右移 |
把一个数的比特向右移一定数目 |
11 >> 1得到5。——11按比特表示为1011,向右移动1比特后得到101,即十进制的5。 |
& |
按位与 |
数的按位与 |
5 & 3得到1 |
| |
按位或 |
数的按位或 |
5 | 3得到7 |
^ |
按位异或 |
数的按位异或 |
5 ^ 3得到6 |
~ |
按位翻转 |
x的按位翻转是-(x+1) |
~5得到-6 |
< |
小于 |
返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 |
5 < 3返回0(即False)而3 < 5返回1(接True)。比较可以被任意连接:3 < 5 < 7返回True。 |
> |
大于 |
返回x是否大于y |
5 > 3返回True。如果两个操作数都是数字,它们首先被转换为一个共同的类型。否则,它总是返回False。 |
<= |
小于等于 |
返回x是否小于等于y |
x = 3; y = 6; x <= y返回True。 |
>= |
大于等于 |
返回x是否大于等于y |
x = 4; y = 3; x >= y返回True。 |
== |
等于 |
比较对象是否相等 |
x = 2; y = 2; x == y返回True。x = "str"; y = "stR"; x == y返回False。x = "str"; y = "str"; x == y返回True。 |
!= |
不等于 |
比较两个对象是否不相等 |
x = 2; y = 3; x != y返回True。 |
not |
布尔”非“ |
如果x为True,返回False。如果x是False,它返回True。 |
x = True; not x返回False。 |
and |
布尔”与“ |
如果x为False,x and y返回False,否则它返回y的计算值。 |
x = False; y = True; x and y,由于x是False,返回False。在这里Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。这个现象称为短路计算。 |
or |
布尔”或“ |
如果x是True,x or y返回True,否则它返回y的计算值。 |
x = True; y = False; x or y返回True。短路计算在这里也适用。 |
2. 运算符优先级
下表运算符是从最低到最高。Python会首先计算表中最下面的运算符,然后再计算表上部的。实际上强烈建议使用圆括号来分组运算符和操作数,以便明确地指出运算的先后顺序,达到易读。
计算顺序:默认地按照运算符优先级决定,如果您要改变它们的顺序,得使用圆括号,如:(2 + 3) * 4
结合规律:运算符由左向右结合(同一级别的运算符),如:2 + 3 + 4被计算成(2 + 3) + 4
赋值运算符由右向左结合,如:a = b = c被处理为a = (b = c)
运算符 | 描述 |
lambda |
Lambda表达式 |
or |
布尔”或“ |
and |
布尔”与“ |
not x |
布尔”非“ |
in,not in |
成员测试 |
is,is not |
同一性测试 |
<,<=,>,>=,!=,== |
比较 |
| |
按位或 |
^ |
按位异或 |
& |
按位与 |
<<,>> |
移位 |
+,- |
加法与减法 |
*,/,% |
乘法、除法与取余 |
+x,-x |
正负号 |
~x |
按位翻转 |
** |
指数 |
x.attribute |
属性参考 |
x[index] |
下标 |
x[index:index] |
寻址段 |
f(arguments...) |
函数调用 |
(expression,...) |
绑定或元组显示 |
[expression,...] |
列表显示 |
{key:datum,...} |
字典显示 |
'expression,...' |
字符串转换 |
3. 表达式
2 | # Filename: expression.py |
9 | print("Perimeter is", 2 * (length + breadth)) |
输出结果如下:
Area is 10
Perimeter is 14
----------------------------------------------------------------------------------4
Python学习笔记(4):控制流
Python的控制语句有if、while、for、break、continue。
1. if语句
下面是一个猜数字游戏例子:
04 | guess = int(input("Enter a integer:")) |
07 | print("Congratulations, you guessed it.") |
09 | print("No, it is a little higher than that") |
11 | print("No, it is a little lower than that") |
注意if语句结尾处包含一个冒号(:),所有控制语句结尾处都需要冒号。Python没有switch语句,您可以用if...elif...else来完成相同功能。
2. while语句
您可能发现上面猜数字游戏,每次都要启动一下才能猜,下面可以用while语句来控制直到你猜中才退出游戏。
07 | guess = int(input("Enter a integer:")) |
10 | print("Congratulations, you guessed it.") |
13 | print("No, it is a little higher than that") |
15 | print("No, it is a little lower than that") |
17 | print("The game is over.") |
其实与while相对的else是多余的,与直接把它的语句放在在while语句块后面的效果相同。
3. for语句
6 | print("The for loop is over.") |
输出结果为:
1
2
3
4
The for loop is over.
4. break语句
4 | s = input("Enter something:") |
7 | print("Length of the string is", len(s)) |
5. continue语句
4 | s = input("Enter something:") |
9 | print("Input is of sufficient length") |
----------------------------------------------------------------------------------5
在前面我们已经见过一些Python内建函数,比如len和rang。现在我们来看看自定义函数,函数是通过def关键字来定义,后面跟函数名称和圆括号,括号内可以包含参数,该行以冒号结束,接下来是语句块,即函数体。
1. 简单的sayHello函数
2. 带形参函数
3 | print(a, "is maximum.") |
5 | print(b, "is maximum.") |
3. 局部变量
4 | print("Changed local x to ", x) |
运行结果为:
x is 50
Changed local x to 2
x is still 50
4. 默认参数值
1 | def say(message, times = 1): |
运行结果为:
ha
haha
5. 关键参数
1 | def func(a, b = 5, c = 10): |
2 | print("a is", a, "and b is", b, "and c is", c) |
运行结果为:
a is 3 and b is 7 and c is 10
a is 25 and b is 5 and c is 24
a is 100 and b is 5 and c is 50
6. return语句
7. 文档字符串DocStrings
Python有一个奇妙的特性,就是文档字符串(DocStrings),它的主要作用就是帮助你的程序文档更加简单易懂。
02 | '''Prints the maximum of two numbers. |
03 | The two values must be integers.''' |
08 | print(x, "is maximum.") |
10 | print(y, "is maximum.") |
13 | print(printMax.__doc__) |
运行结果为:
5 is maximum.
Prints the maximum of two numbers.
The two values must be integers.
Help on function printMax in module __main__:
printMax(x, y)
Prints the maximum of two numbers.
The two values must be integers.
http://www.cnblogs.com/known/archive/2010/07/31/1789249.html