【Python】元组 tuple ③ ( 元组中 列表类型 元素值可修改 | 元组 while 循环遍历 | 元组 for 循环遍历 )

2023-10-11 17:41:10 浏览数 (1)

一、元组中 列表类型 元素值可修改

元组中的 元素 是 不可修改的 , 但是如果在 元组中 放入了一个 列表类型的元素 , 列表引用无法修改 , 但是列表中的 元素是可以修改的 ;

代码示例 :

代码语言:javascript复制
"""
元组 tuple 常用操作 代码示例
"""

# 定义元组字面量
t0 = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

# 打印元组
print(t0)

# 修改元组中的 列表元素 的 元素
t0[2][0] = 16
t0[2][1] = "Jack"
t0[2][2] = True
t0[2][3] = 2.121212

# 打印元组
print(t0)

执行结果 :

代码语言:javascript复制
('Tom', 'Jerry', [18, 'Tom', False, 3.1415926])
('Tom', 'Jerry', [16, 'Jack', True, 2.121212])

二、使用 while 循环遍历元组

1、while 循环遍历元组

将 元组 容器 中的数据元素 , 依次逐个取出进行处理的操作 , 称为 元组的遍历 ;

使用 while 循环 遍历 元组容器 :

  • 元素访问方式 : 使用 下标索引 访问 元组中的元素 ;
  • 循环控制 :
    • 循环控制变量 : 用于指示当前循环的 下标索引 ;
    • 循环条件 : 设置为 循环控制变量 ( 下标索引 ) < 列表长度 ;

while 循环遍历元组 语法如下 :

代码语言:javascript复制
# 循环控制变量定义 对应下标索引
index = 0
while index < len(元组变量):
	# 使用 下标索引 取出元组元素, 使用变量接收元组元素
	变量 = 元组变量[index]
	# 处理元素
	# 下标索引变量 ( 循环控制变量 ) 自增 1 
	index  = 1

2、代码示例 - 使用 while 循环遍历元组

代码示例 :

代码语言:javascript复制
"""
while / for 循环遍历 元组 代码示例
"""


def truple_while():
    """
    while 循环遍历 truple 元组

    :return: None
    """
    truple = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

    # 循环控制变量定义 对应下标索引
    index = 0

    # 开始进行 循环
    # 每次循环 循环控制变量索引自增 1
    while index < len(truple):
        # 使用 下标索引 取出列表元素, 使用变量接收列表元素
        name = truple[index]

        # 打印元素
        print(f"{index} . {name}")

        # 处理元素
        # 下标索引变量 ( 循环控制变量 ) 自增 1
        index  = 1

    # 空返回值
    return None


# 调用 while 循环函数
truple_while()

执行结果 :

代码语言:javascript复制
0 . Tom
1 . Jerry
2 . [18, 'Tom', False, 3.1415926]

三、使用 for 循环遍历元组

1、for 循环遍历元组

for 循环 语法 : 在 for 循环中 , 将 数据元素 从 数据容器 中取出来 , 赋值给 临时变量 , 每次循环都对 临时变量 进行操作 ;

代码语言:javascript复制
for 临时变量 in 数据容器:
	# 处理临时变量

for 循环没有条件控制 , 只是将 元素 从容器中挨个取出 , 进行操作 , 编写起来比 while 循环要简单 ;

代码示例 :

代码语言:javascript复制
"""
while / for 循环遍历 元组 代码示例
"""

def truple_for():
    """
    for 循环遍历 List 元组

    :return: None
    """
    truple = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

    print(f"for 循环 : ")

    for name in truple:
        # 打印元素
        print(f"{name}")

    print("")

    # 空返回值
    return None

# 调用 for 循环遍历元组
truple_for()

执行结果 :

代码语言:javascript复制
for 循环 : 
Tom
Jerry
[18, 'Tom', False, 3.1415926]

2、for 循环 Range 范围 遍历元组

range(m, n) 语句 , 可以生成 由 m 到 n 的序列 , 不含 n 本身 ;

代码示例 :

代码语言:javascript复制
"""
while / for 循环遍历 元组 代码示例
"""

def truple_for_range():
    """
    for 循环遍历 Truple 元组

    :return: None
    """
    truple = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

    print(f"for   range 循环 : ")

    for index in range(0, len(truple)):
        # 打印元素
        print(f"{index} . {truple[index]}")

    print("")

    # 空返回值
    return None

# 调用 for   range 循环遍历元组
truple_for_range()

执行结果 :

代码语言:javascript复制
for   range 循环 : 
0 . Tom
1 . Jerry
2 . [18, 'Tom', False, 3.1415926]

四、while 循环 与 for 循环对比

while 循环 与 for 循环对比 :

  • 循环控制 :
    • while 循环可以自定义循环条件 , 并且可以自定义 控制循环变量 变化 过程 ;
    • for 循环 只能从 容器中取出数据 ;
  • 无限循环 :
    • while 循环 只要 循环条件 为 true 就 可以 进行 无限循环 ;
    • for 循环 不能进行无限循环 , 其循环次数受 容器 数据个数限制 , 容器中有多少个元素 , 就能循环几次 ;
  • 使用场景 :
    • while 循环可应用于任意场景 ;
    • for 循环 只 适用于 遍历数据容器 , 或者 固定循环次数 的循环 ;

for 循环使用受限 , 但是使用频率远高于 while 循环 ;

五、完整代码示例


代码示例 :

代码语言:javascript复制
"""
while / for 循环遍历 元组 代码示例
"""


def truple_while():
    """
    while 循环遍历 truple 元组

    :return: None
    """
    print(f"while 循环 : ")

    truple = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

    # 循环控制变量定义 对应下标索引
    index = 0

    # 开始进行 循环
    # 每次循环 循环控制变量索引自增 1
    while index < len(truple):
        # 使用 下标索引 取出元组元素, 使用变量接收元组元素
        name = truple[index]

        # 打印元素
        print(f"{index} . {name}")

        # 处理元素
        # 下标索引变量 ( 循环控制变量 ) 自增 1
        index  = 1

    print("")

    # 空返回值
    return None


# 调用 while 循环函数
truple_while()


def truple_for():
    """
    for 循环遍历 List 元组

    :return: None
    """
    truple = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

    print(f"for 循环 : ")

    for name in truple:
        # 打印元素
        print(f"{name}")

    print("")

    # 空返回值
    return None


# 调用 for 循环遍历元组
truple_for()


def truple_for_range():
    """
    for 循环遍历 Truple 元组

    :return: None
    """
    truple = ("Tom", "Jerry", [18, "Tom", False, 3.1415926])

    print(f"for   range 循环 : ")

    for index in range(0, len(truple)):
        # 打印元素
        print(f"{index} . {truple[index]}")

    print("")

    # 空返回值
    return None

# 调用 for   range 循环遍历元组
truple_for_range()

执行结果 :

代码语言:javascript复制
while 循环 : 
0 . Tom
1 . Jerry
2 . [18, 'Tom', False, 3.1415926]

for 循环 : 
Tom
Jerry
[18, 'Tom', False, 3.1415926]

for   range 循环 : 
0 . Tom
1 . Jerry
2 . [18, 'Tom', False, 3.1415926]

0 人点赞