数字

在Python 中数的类型有三种——整数、浮点数和复数。

  • 2 是一个整数的例子。

  • 3.23 和52.3E-4 是浮点数的例子。E 标记表示10 的幂。在这里, 52.3E-4 表示52.3 * 10−4。

  • (-5+4j) 和(2.3-4.6j) 是复数的例子。

在Python 中不用区分‘long int’类型。默认的整数类型可以任意长。

字符串

字符串是字符的序列。字符串基本上就是一组单词。单词可以是英语或其它由Unicode 标准支持的语言,其实这也意味着世界上几乎所有的语言

没有仅仅使用ASCII 的字符串,原因是Unicode 是ASCII 的超集。如果要严格使用ASCII 编码的字节流,可用str.encode("ascii")

单引号

你可以用单引号指定字符串,如’Quote me on this’ 。所有的空白,即空格和制表符都照原样保留。

双引号

在双引号中的字符串与单引号中的字符串的使用完全相同,例如"What’s yourname?" 。

5.6 三引号

利用三引号("""or'''),你可以指示一个多行的字符串。你可以在三引号中自由的使用单引号和双引号

转义序列

用\表示转义序列需要说明的是,在一个字符串中,在一行末尾的反斜杠仅仅表示下一行的字符串是上一行的继续。,但并不增加新的行。

自然字符串

如果,你想指定一些不被特殊处理,例如像转义序列,那么,就需要通过在字符串前面附加r 或R 来指定自然字符串。例如,"Newlines are indicated by \n" 。

字符串是不可变的

这意味着一个字符串一旦创建,就不能在改变它。

如果你把两个字符串按字面意义相邻放着,他们会被Python 自动级连。例如,’What\’s”your name?’ 会被自动转为"What’s your name?" 。

format 方法

有时我们并不想用其他信息来构造字符串。这儿format() 方法就很有用。

#!/usr/bin/python
# Filename: str_format.py
age = 25
name = 'Swaroop'
print('{0} is {1} years old'.format(name, age))
print('Why is {0} playing with that python?'.format(name))

标识符的命名

数字,字母,下划线,不能以数字开头,区分大小写

操作符

+    加

-    减

*    乘

**    乘方

/    除

//    取整除

%    取余

<<    左移

>>    右移

&    与

|    或

^    异或

~    按位取反

<    小于

>    大于

<=    小于等于

>=    大于等于

!=    不等于

not    非

and    且

or    或

优先级

lambda

or

and

not x

in,not in

is,not is

<,<=,>,>=,!=,==

|

^

&

<<,>>

+,-

*,/,//,%

+x,-x

~x

**

x.attribute

x[index]

x[index1:index2]

f(arguments ...)

(expressions, ...)

[expressions, ...]

key:datum, ...

结合顺序

运算符通常是从左往右结合的,例如,有相同优先级的运算符按照从左向右的顺序计算。例如,2+3+4 的顺序是(2+3)+4。一些运算符,如赋值运算符有从右向左的结合顺序,例如a=b=c 被当成a=(b=c) 。