Day -10 tuple与List

tuple 可放任意物件,但不可变 ;

tuple用法如下

  • 建立多个元素
tupleSample = ("Groucho","Sam")
print(empty_tuple)

emptySample = "Sandy","Paul"
print(empty_tuple)


('Groucho', 'Sam')
('Sandy', 'Paul', 'Rose')

为字元找寻字元为第几个

vowels = ('a', 'e', 'i', 'o', 'i', 'u')
index = vowels.index('e')
print('The index of e:', index)
index = vowels.index('i')
print('The index of i:', index)

The index of e: 1
The index of i: 2

印出格式

print(type(vowels))
<class 'tuple'>

一次对应多个对应变数,称为拆包(unpacking)

marx_tuple = ( 'Groucho' , 'Chico' , 'Harpo')
a, b , c = marx_tuple

print(a)
print(b)
print(c)

tuple 值直接对调(SWAP),不用暂存变数

password = 'Hello' , 
icecream = 'Mary' ,
password , icecream = icecream , password

print(password)
print(icecream)

('Mary',)
('Hello',)

使用tuple()函式,转换成tuple

marx_list = ['Groucho' , 'Chico' , 'Harpo'] 
print(tuple(marx_list))
('Groucho', 'Chico', 'Harpo')

print(('Groucho' ,)+ ('Chico' , 'Harpo'))
('Groucho', 'Chico', 'Harpo')

用 * 乘号来运算 显示多笔

('yeah',) * 3
print(('yeah',) * 3)

('yeah', 'yeah', 'yeah')

比较 tuple

a = (7,2)
b = (7,2,9)
a == b
print(a == b)

使用range()

range_tuple = tuple(range(10))
print(type(range_tuple))
print(range_tuple)
print(range_tuple[:5:2])
(0, 2, 4)

List 可放任意物件 ,可变。

List用法如下

  • List 相加 有两种方式,t1内存记忆体不同:

t1 = ('one','two','three')
t2 = ('four')
print(id(t1))
print(t1 + t2)

t1 += t2
print(t1) 
print(id(t1))

('one', 'two', 'three', 'four')
47210502568192
('one', 'two', 'three', 'four')
47210502433104

tuple 与 串列 比较
tuple 通常可以取代List,但可操作的功能会少很多,且不能修改。
tuple优点:

  • tuple 占用的空间较少
  • 不可能无意间修改tuple的项目和值
  • tuple 可以当字典的key来使用

<<:  GCP NAT

>>:  30天轻松学会unity自制游戏-增加摇杆&修改画布

Day3 - 创建第一个专案

安装完Android Studio 那麽就开始创建我第一个Project吧 开始 我发现我下载的版本...

14 - Logs - 挖掘系统内部发生的状况 (2/4) - 使用 Filebeat 应该要了解的设计细节与原理

Logs - 挖掘系统内部发生的状况 系列文章 (1/4) - Logs 与 Filebeat 的基...

课堂笔记 - 物联网概论(2)

感知层 将具有感测与辨识能力的元件嵌入连结上真实的物体里面,进而能够对环境进行监控与感知。 分别有...

[Bonus 系列] - 和 useEffect 很像的 useLayoutEffect

这篇要补充一个比较少使用到的 useLayoutEffect hook,和 useEffect 语法...

Day 30 | 很像 Vue 的 AlpineJS(五): 与 Livewire 共享资料

前面三篇关於 AlpineJs 的文章都是在控制前端的页面而跟 Livewire 比较无关,那今天就...