5. 变量标识符的命名规则

变量、名字和对象

  • Python里所有数据——布尔值、整数、浮点数、字符串,甚至大型数据结构、函数以及程序——都是以对象(Object)的形式存在的。这使得Python语言具有很强的统一性。
  • 对象的类型决定了可以对它进行的操作。
  • 对象的类型也决定了它装着的数据的是允许被修改的变量(可变的)还是不可被修改的常量(不可变的)。
  • Python是强类型的(Strongly typed),你永远无法修改一个已有对象的类型,即使它包含的值是可变的。
  • 如果你想知道一个对象的类型,可以使用语句:type(thing)。
  • 类(class)是对象的定义,在Python中,”类”和”类型”一般不加区分。

标识符命名规则

  1. 标识符的第一个字符必须是字母(a-Z)或者下划线_
  2. 标识符的其他部分可以是字母(a-Z)或者下划线_或者数字(0-9)组成
  3. 标识符大小写敏感

示例:

>>> /a='1'                                    # 无效
  File "<stdin>", line 1
    /a='1'
    ^
SyntaxError: invalid syntax
>>> ?a='1'                                    # 无效
  File "<stdin>", line 1
    ?a='1'
    ^
SyntaxError: invalid syntax


>>> 1a=2                                      # 无效
  File "<stdin>", line 1
    1a=2
    ^
SyntaxError: invalid syntax

>>> _a='1'                                    # 有效
>>> _a
'1'

>>> a1='a1'                                   # 有效
>>> a1
'a1'
>>> a_1="a_1"                                 # 有效
>>> a_1
'a_1'
>>> a_a_1="a_a_1"                             # 有效
>>> a_a_1
'a_a_1'

基数

在Python中,整数默认使用十进制(以10为底),除非你在数字前添加前缀,显式地指定使用其他基数(base)。

  • 基数指的是在必须进位前可以使用的数字的最大数量。以2为底(二进制)时,可以使用的数字只有1和0,这里的0和十进制的0代表的意义相同,1和十进制的1所代表的意义也相同。然而以2为底时,1与1相加得到的将是10(一个二加0个一)。

在Python中,除十进制外你还可以使用其他三种进制的数字:

  • 0b或0B代表二进制(以2为底)
  • 0o或0O代表八进制(以8为底)
  • 0x或0X代表十六进制(以16为底)

示例:

>>> 10
10
>>> 0b10
2
>>> 0o10
8
>>> 0x10
16
>>> 0xa
10
>>> 0xb
11
>>> 0xc
12
>>> 0xd
13
>>> 0xe
14
>>> 0xf
15

类型转换

  • int()函数将其他的数据类型转为整型。
  • float()函数将其他的数据类型转为浮点型。
  • str()函数将其他的数据类型转为字符串。

示例:

>>> int(True)
1
>>> int(False)
0
>>> int(98.6)
98
>>> int(1.1e3)
1100
>>> float(True)
1.0
>>> float(False)
0.0
>>> float(98)
98.0
>>> float(98.6)
98.6
>>> float('1.1e3')
1100.0
>>> str(98.6)
'98.6'
>>> str(1.1e3)
'1100.0'
>>> str(True)
'True'
>>>