十三、元组(tu)(了解)和 range

1.元组(tu)(了解)

  • 只读列表,存大量的数据,可以索引、切片(步长)

    (1,2,'yang')

  • 不能增删改

  • 可查,元组里面的列表可增删改

  • 应用:

(1)重要数据、用户名、密码、个人信息,不想让别人改动的一些数据,存在元组中

比如:

tu = (100, '太白', True, [1, 2, 3])
print(tu[0])
print(tu[:3])
print(tu[:])
#结果
100
(100, '太白', True)
(100, '太白', True, [1, 2, 3])

tu = (100, '太白', True, [1, 2, 3])
print(len(tu))
tu[-1].append(666)
print(tu)
#结果
4
(100, '太白', True, [1, 2, 3, 666])

del tu[2]
print(tu)
#结果:会报错,因为元组没有删除的操作

(2)元组的拆包,分别赋值,多一个少一个都不行,一一对应

a, b = (1, 2)                  # 多一个少一个都不行
print(a,b)
#结果:1 2

2.元组的补充

tuple补充:

元祖中,如果只有一个元素,并且没有逗号,那么它不是元组,它与改元素的数据类型一致

  • count:计算元素出现的次数

    tu.count()

  • index:通过元素找索引,找到第一个就返回

    tu.index()


# tuple
# 元组中如果只有一个元素,并且没有逗号,那么它不是元组,它与改元素的数据类型一致。 ***
tu1 = (2,3,4)
tu1 = (2)
tu1 = ('太白')
tu1 = ([1,2,3])
tu1 = (1,)
print(tu1,type(tu1))
tu = (1,2,3,3,3,2,2,3,)
# count 计数
print(tu.count(3))
tu = ('太白', '日天', '太白')
# index
print(tu.index('太白'))

 

3.range

range:类似于列表,自定制数字范围的数字列表

(1)索引(了解)

r = range(10)           # range(10)就相当于[0,1,2,3,4,5,6,7,8,9]
print(r[1])
#结果:1

(2)多与for结合

比如:

#依次打印1~100
for i in range(1,101):
  print(i)

#依次打印1~100中的偶数
for i in range(2,101,2):
  print(i)

#倒着依次打印1~100
for i in range(100,0,-1):
  print(i)

练习:利用for循环,利用range将l1列表的所有索引依次打印出来

l1 = [1, 2, 3, 'alex', '太白', 2, 3, 4, 66,]
for i in range(len(l1)):
  print(i)

note:注意print(i)的位置,可能会导致输出结果的不同

比如:

for i in range(3):
  pass
print(i)
# 结果:2

for i in range(3):
  pass
  print(i)
# 结果:

0
1
2

上面的程序print在循环外边,打印最后一个数为2;下边的程序print在循环里边,每取一个值都打印,结果为0 1 2 

 

    

原文地址:https://www.cnblogs.com/yangzm/p/10809089.html