转Python学习(三)
原文出处
作者:Wanglikai91
出处:http://www.cnblogs.com/wanglikai91/
4、变量:
只用常量是不够的,我们需要一种既可以储存信息 又可以对它们进行操作的方法,这时就需要变量了。变量只是计算机中存储信息的一部分内存,我们需要一个变量名来访问它们。
5、标识符的命名:
- 标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘ _ ’)。
- 标识符名称的其他部分可以由字母(大写或小写)、下划线(‘ _ ’)或数字(0-9)组成。
- 标识符名称是对大小写敏感的。例如,myname和myName不是一个标识符。注意前者中的小写n和后者中的大写N。
- 有效 标识符名称的例子有i、__my_name、name_23和a1b2_c3。
- 无效 标识符名称的例子有2things、this is spaced out和my-name。
6、数据类型:
变量可以处理不同类型的值,称为数据类型。基本的类型是数和字符串,我们也可以自己用类定义数据类型。
7、对象:
Python把在程序中用到的任何东西都称为对象
注:就每一个东西包括数、字符串甚至函数都是对象这一点来说,Python是极其完全地面向对象的。
例:使用变量和字面意义上的常量
1
2
3
4
5
6
7
8
9
10
|
# Filename : var.py i = 5 print (i) i = i + 1 print (i) s = '''This is a multi-line string. This is the second line.''' print (s) |
输出:
C:\Users\Administrator>python D:\python\var.py
5
6
This is a multi-line string. This is the second line.
工作原理:
首先我们使用赋值运算符(=)把一个字面意义上的常数5赋给变量i。这一行称为一个语句。语句声明需要做某件事情,在这个地方我们把变量名i与值5连接在一起。接下来,我们用print语句打印i的值,就是把变量的值打印在屏幕上。
然后我们对i中存储的值加1,再把它存回i。我们打印它时,得到期望的值6。
类似地,我们把一个字面意义上的字符串赋给变量s然后打印它。
注:使用变量时只需要给它们赋一个值。不需要声明或定义数据类型。
8、逻辑行和物理行:
物理行是你在编写程序时所看见的。逻辑行是Python看见的单个语句。Python假定每个物理行对应一个逻辑行 。
逻辑行的例子如print 'Hello World'这样的语句——如果它本身就是一行,那么它也是一个物理行。Python希望每行都只使用一个语句,这样使得代码更加易读。如果你想要在一个物理行中使用多于一个逻辑行,那么你需要使用分号(;)来特别地标明这种用法。分号表示一个逻辑行/语句的结束。例如:
1
2
3
4
5
6
7
8
9
10
11
12
|
i = 5 print (i) '''与下面这个相同:''' i = 5 ; print (i); '''同样也可以写成:''' i = 5 ; print (i); '''甚至可以写成:''' i = 5 ; print (i) |
建议坚持在每个物理行只写一句逻辑行。仅仅当逻辑行太长的时候,在多于一个物理行写一个逻辑行。这些都是为了尽可能避免使用分号,从而让代码更加易读。
下面是一个在多个物理行中写一个逻辑行的例子。称为明确的行连接。
1
2
3
|
s = 'This is a string. \ This continues the string.' print (s) |
输出:
This is a string. This continues the string.
类似地,
1
2
|
print \ (i) |
与如下写法效果相同:
1
|
print (i) |
有时候,有一种暗示的假设,可以使你不需要使用反斜杠。这种情况出现在逻辑行中使用了圆括号、方括号或波形括号的时候。这被称为暗示的行连接。
9、缩进:
空白在Python中是重要的,行首的空白称为缩进。在逻辑行首的空白(空格和制表符Tab)用来决定逻辑行的缩进层次,从而用来决定语句的分组。
这意味着同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块。
例如以下输入是错误的:
1
2
3
|
i = 5 print ( 'Value is' , i) # Error! Notice a single space at the start of the line print ( 'I repeat, the value is' , i) |
运行时,提示错误:
print('Value is ', i) # Error! Notice a single space at the start of the line
^
IndentationError: unexpected indent
注意,在第二行的行首有一个空格。Python指示的这个错误告诉我们程序的语法是无效的,即程序没有正确地编写。它告诉我们不能随意地开始新的语句块。
这里强调一下,print()在python2版本中是可以不使用括号的,而python3是不允许的。也就是说上面的输出不能写成print 'I repeat, the value is', i
在版本上python3表现出来的是彻底不向下兼容的姿态。
不要混合使用制表符和空格来缩进,因为这在跨越不同的平台的时候,无法正常工作。强烈建议在每个缩进层次使用单个制表符或两个或四个空格。