引言:变量赋值

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。

单个变量赋值

示例

counter=100         # 整型变量
miles =1000.0         # 浮点型变量
name ="runoob"        # 字符串
print(counter)
print(miles)
print(name)

执行以上程序会输出如下结果:


多个变量赋值

Python允许你同时为多个变量赋值。

示例 1

a = b = c = 1

以上实例,创建一个整型对象,值为 1,从后向前赋值,三个变量被赋予相同的数值。

同时也可以为多个对象指定多个变量。

示例 2

a, b, c = 1, 2, "runoob"

以上实例,两个整型对象 1 和 2 的分配给变量 a 和 b,字符串对象 "runoob" 分配给变量 c。

type() 函数

可以通过 type() 函数查看变量的类型:

x=10                          # 整数
y=3.14                        # 浮点数
name="Alice"                  # 字符串
is_active=True                # 布尔值
                              # 多变量赋值
a,b,c=1,2,"three"
                              # 查看数据类型
print(type(x))                # <class 'int'>
print(type(y))                # <class 'float'>
print(type(name))             # <class 'str'>
print(type(is_active))        # <class 'bool'>

标准数据类型

Python3 中常见的数据类型有:

  • Number(数字)
  • String(字符串)
  • bool(布尔类型)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

此外还有一些高级的数据类型,如: 字节数组类型(bytes),这里主要介绍三个不可变数据。


Number(数字)

Python3 支持 int、float、bool、complex(复数)

在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

数值类型实例

int float complex
10 0.0 3.14j
100 15.20 45.j
-786 -21.9 9.322e-36j
080 32.3e+18 .876j
-0490 -90. -.6545+0J
-0x260 -32.54e100 3e+26J
0x69 70.2E-12 4.53e-7j

Python 还支持复数,复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示, 复数的实部 a 和虚部 b 都是浮点型。

注意

  1. Python可以同时为多个变量赋值,如a, b = 1, 2。
  2. 一个变量可以通过赋值指向不同类型的对象。
  3. 在混合计算时,Python会把整型转换成为浮点数。

String(字符串)

Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。

字符串的截取的语法格式如下:

变量[头下标:尾下标]

索引值以 0 为开始值,-1 为从末尾的开始位置。

加号 + 是字符串的连接符, 星号 * 表示复制当前字符串,与之结合的数字为复制的次数。

示例

word = 'Runoob'           # 定义一个字符串变量
print(word)               # 打印整个字符串
print(word[0:-1])         # 打印字符串第一个到倒数第二个字符(不包含倒数第一个字符)
print(word[0])            # 打印字符串的第一个字符
print(word[2:5])          # 打印字符串第三到第五个字符(不包含索引为 5 的字符)
print(word[2:])           # 打印字符串从第三个字符开始到末尾
print(word*2)             # 打印字符串两次
print(word+"TEST")        # 打印字符串和"TEST"拼接在一起
print(word[0],word[5])   # 打印字符串第一个字母和第6个字母
print(word[-1],word[-6]) # 打印字符串最后一个字母和倒数第六个字母

执行以上程序会输出如下结果:

Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:

print('Ru\noob')

运行结果如下图所示:

print(r'Ru\noob')

运行结果如下图所示:

另外,反斜杠(\)如果出现在行代码的最后也可以作为续行符,表示下一行是上一行的延续。同时续行符也可以使用 """ 内容 """ 或者 ''' 内容 ''' 实现跨越多行。

注意,Python 没有单独的字符类型,一个字符就是长度为1的字符串。

常用转义字符表

转义字符 含义 转义字符 含义
\n

换行符

\r 回车
\t 制表符 \\ 一个反斜杠
\' 单引号 \'' 双引号

注意

  1. 反斜杠可以用来转义,使用r可以让反斜杠不发生转义。
  2. 字符串可以用+运算符连接在一起,用*运算符重复。
  3. Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
  4. Python中的字符串不能改变。

bool(布尔类型)

布尔类型即 True False

在 Python 中,True 和 False 都是关键字,表示布尔值。

布尔类型可以用来控制程序的流程,比如判断某个条件是否成立,或者在某个条件满足时执行某段代码。

布尔类型特点

  1. 布尔类型只有两个值:True 和 False。

  2. bool 是 int 的子类,因此布尔值可以被看作整数来使用,其中 True 等价于 1。

  3. 布尔类型可以和其他数据类型进行比较,比如数字、字符串等。在比较时,Python 会将 True 视为 1,False 视为 0。

  4. 布尔类型可以和逻辑运算符一起使用,包括 and、or 和 not。这些运算符可以用来组合多个布尔表达式,生成一个新的布尔值。

  5. 布尔类型也可以被转换成其他数据类型,比如整数、浮点数和字符串。在转换时,True 会被转换成 1,False 会被转换成 0。

实例

# 布尔类型的值和类型
a=True
b=False
print(type(a))    # <class 'bool'>
print(type(b))    # <class 'bool'>
# 布尔类型的整数表现
print(int(True))     # 1
print(int(False))    # 0
# 使用 bool() 函数进行转换
print(bool(0))         # False
print(bool(42))        # True
print(bool(''))        # False
print(bool('Python'))  # True
print(bool([]))        # False
print(bool([1,2,3]))   # True

注意

在 Python 中,所有非零的数字和非空的字符串、列表、元组等数据类型都被视为 True,只有 0、空字符串、空列表、空元组等被视为 False。因此,在进行布尔类型转换时,需要注意数据类型的真假性。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐