python学习笔记--note1
1.字面意义上的常量
一个字面意义上的常量的例子是如同5
、1.23
、9.25e-3
这样的数,或者如同'This is a string'
、"It's a string!"
这样的字符串,数2
总是代表它自己,而不会是别的什么东西——它是一个常量,因为不能改变它的值。
2.数
python中有4中类型的数--整数、长整数、浮点数和复数。
长整数不过是大一些的整数,3.14和96.8E-4是浮点数的例子。
3.字符串
a.使用单引号('),可以用单引号知识字符串,’Quote me on this',所有的空格制表符都照原样保留。
b.使用双引号("),在双引号中的字符串与单引号中的字符串的使用完全相同。
c.使用三引号('''或"""),利用三引号,你可以指示一个多行的字符串,可以在三引号中自由的使用单引号和双引号。
>>> print '''This is a multi-line String. This is the first line.
... 'hello ,second line.
... '
... "My name is Alex,what's your name?"
... Zeng '''
This is a multi-line String. This is the first line.
'hello ,second line.
'
"My name is Alex,what's your name?"
Zeng
d.转义字符
>>> print "What's your name?"
What's your name?
>>> print 'What\'s your name?'
What's your name?
类似地,要在双引号字符串中使用双引号本身的时候,也可以借助于转义符。另外,你可以用转义符\\
来指示反斜杠本身。
值得注意的一件事是,在一个字符串中,行末的单独一个反斜杠表示字符串在下一行继续,而不是开始一个新的行。例如:
>>> print 'fist \
... second \
... third'
fist second third
>>>
e.自然字符串
如果想要指示某些不需要如转义符那样的特别处理的,那么需要指定一个自然字符串,自然字符串通过给字符串加前缀r 或 R来指定。
>>> print 'This is a test for nature stings \n'
This is a test for nature stings
>>> print r'This is a test for nature stings \n'
This is a test for nature stings \n
>>> print R'This is a test for nature stings \n'
This is a test for nature stings \n
>>>
f.Unicode字符串
在处理文本的时候使用Unicode字符串,尤其是当知道文本文件中含有非英文文本的时候。
>>> print u'总是想说些什么,zzzz'
总是想说些什么,zzzz
>>> print '总是想说些什么,zzzz'
总是想说些什么,zzzz
g.字符串是不可变的
一旦创建了一个字符串就不能再改变它。
h.按照字面意义级联字符串
如果将两个字符串按照字面意义相邻放着,它们会被python自动级级联。
>>> print 'What\'s ' 'you name?'
What's you name?
>>>
tips:
记住,单引号和双引号字符串是完全相同的——它们没有在任何方面有不同,
一定要用自然字符串处理正则表达式。否则会需要使用很多的反斜杠。例如,后向引用符可以写成'\\1'
或r'\1'.
4.变量
变量就是我们想要的东西——它们的值可以变化,即你可以使用变量存储任何东西。变量只是你的计算机中存储信息的一部分内存。与字面意义上的常量不同,你需要一些能够访问这些变量的方法,因此你给变量名字。
a.标示符的命名
变量是标示符的例子,标示符是用来标示某样东西的名字。
标示符的第一个字符必须是字母(大写,小写)或'_'
标示符剩下的部分除了第一条还可以用上数字
标示符大小写敏感
5.对象
python把程序中用到的任何东西都称之为”对象“
就每一个东西包括数、字符串甚至函数都是对象这一点来说,Python是极其完全地面向对象的。
使用变量时只需要给它们赋一个值。不需要声明或定义数据类型。
6.逻辑行与物理行
物理行是你在编写程序时所 看见 的。逻辑行是Python 看见 的单个语句。Python假定每个 物理行 对应一个 逻辑行
默认地,Python希望每行都只使用一个语句,这样使得代码更加易读。
如果你想要在一个物理行中使用多于一个逻辑行,那么你需要使用分号(;)来特别地标明这种用法。分号表示一个逻辑行/语句的结束。
7.缩进
空白在python中是重要的,事实上行首的空白是重要的,它称为缩进。在逻辑行首的空白用来决定逻辑行的缩进层次从而用来决定语句的分组,这意味着同一层次的语句必须要有相同的缩进,每一组这样的语句称为一个块。
8.运算符
>>> 3+5
8
>>> 'Alex' +' Zeng'
'Alex Zeng'
>>> -5.3
-5.3
>>> 4-7
-3
>>> 2*3
6
>>> 2*'bres'
'bresbres'
>>> 2**4
16
>>> 2/3
0
>>> 2.0/3
0.6666666666666666
>>> 2/3.0
0.6666666666666666
>>> 2//3.0
0.0
>>> 10//3.0
3.0
9.控制流
a.在python中有三种控制流:if、for、while,在Python中没有switch
语句。
可以在while
循环中使用一个else
从句:
#!/usr/bin/python
# Filename: while.pynumber =
23
running =
True
while
running:
guess =
int
(
raw_input
(
'Enter an integer : '
))
if
guess == number:
print
'Congratulations, you guessed it.'
running =
False
# this causes the while loop to stop
elif
guess < number:
print
'No, it is a little higher than that'
else
:
print
'No, it is a little lower than that'
else
:
print
'The while loop is over.'
# Do anything else you want to do here
print
'Done'
Python的for
循环从根本上不同于C/C++的for
循环。C#程序员会注意到Python的for
循环与C#中的foreach
循环十分类似。Java程序员会注意到它与Java 1.5中的for (int i : IntArray)
相似。
在C/C++中,如果你想要写for (int i = 0; i < 5; i++)
,那么用Python,你写成for i in range(0,5)
。
b.break:
break
语句是用来 终止 循环语句的,即哪怕循环条件没有称为False
或序列还没有被完全递归,也停止执行循环语句。
一个重要的注释是,如果你从for
或while
循环中 终止 ,任何对应的循环else
块将不执行.
c.continue
continue语句用来告诉python跳过当前循环块中的剩余语句,然后进行下一轮循环。
10.函数
函数是重用的程序段,它们允许你给一块语句一个名称,然后你可以在你的程序的任何地方使用这个名称任意多次的运行这个语句块。这被称为调用函数。函数通过def关键字定义。def关键字之后跟这个函数的标示符 然后跟一对圆括号,圆括号之中可以包含一些变量名,该行以冒号结尾接下来是一块语句,它是函数体。
a.如果你想要为一个定义在函数外的变量赋值,那么你就得告诉Python这个变量名不是局部的,而是 全局 的。我们使用global
语句完成这一功能。没有global
语句,是不可能为定义在函数外的变量赋值的。