Python基礎Lists和tuple實例詳解

Lists

列表可以包含不同類型的元素,甚至是Lists,但是通常是同一個類型的。

if __name__ == '__main__':
    squares = [1, 4, [1, 2], "whf", 25]
    print(squares)

索引和切片

列表支持使用下標索引元素,支持切片.

if __name__ == '__main__':
    squares = [1, 4, [1, 2], "whf", 25]
    item1 = squares[0]
    print(item1)
    item2 = squares[-1]
    print(item2)
    squaresShallowCopy = squares[1:3]
    print(squaresShallowCopy)
    print(squaresShallowCopy[0])
    squaresShallowCopy[1:2]=[]
    print(squaresShallowCopy)

輸出:

1
25
[4, [1, 2]]
4
[4]

所有切片操作都會返回一個包含請求元素的新列表,被稱為原列表的淺副本。

增刪改

if __name__ == '__main__':
    squares = [1, 4, [1, 2], "whf", 25]
    squares.insert(1,3)
    print(squares)

輸出:

[1, 3, 4, [1, 2], 'whf', 25]

刪除

pop無參數就彈出尾部的,有參數可以指定位置:

if __name__ == '__main__':
    squares = [1, 4, [1, 2], "whf", 25]
    squares.pop(1)
    print(squares)

輸出:

[1, [1, 2], 'whf', 25]

if __name__ == '__main__':
    squares = [1, 4, [1, 2], "whf", 25]
    squares[0]=0
    print()

輸出:

[0, 4, [1, 2], 'whf', 25]

連接/拼接

if __name__ == '__main__':
    squares = [1, 4, [1, 2], "whf", 25]
    squares+=[66,77]
    print(squares)
    squares.append("88")
    print(squares)
    print(len(squares))

輸出:

[1, 4, [1, 2], 'whf', 25, 66, 77]
[1, 4, [1, 2], 'whf', 25, 66, 77, '88']
8

tuple

tuple和list比較類似,但是tuple是不可變的,所以不能增刪改。

tuple使用括號括起來,使用逗號分隔元素,如果是簡單的元組可以不用:

t = 1, 2, 3
print(t)
t = ((1, 2, 3), (4, 5, 6))
print(t)
empty = ()
print(empty)
singleton = 'hello',
print(singleton)
print(len(singleton))

輸出:

((1, 2, 3), (4, 5, 6))
()
('hello',)
1

解包

t = 1, 2, 3
x, y, z = t
print(x, y, z)

輸出:

1 2 3

元素是可變的仍然可變

這個優點像java的final,不能變引用,內容你想變還是可以的:

if __name__ == '__main__':
    t = ((1, 2, 3), [4, 5, 6])
    list=t[1]
    list[0]=3
    print(t)

輸出:

((1, 2, 3), [3, 5, 6])

namedtuple

具名元組,顧名思義就是讓普通元組具有名字,方便對元素進行命名和訪問:

Student = namedtuple('Student', ['name', 'age', 'city'])
s = Student('Xiaoming', '19', 'Beijing')
print(s)
print(s[1])
print(getattr(s, 'city'))

輸出:

Student(name='Xiaoming', age='19', city='Beijing')
19
Beijing

以上就是Python之Lists和tuple實例詳解的詳細內容,更多關於Python Lists tuple的資料請關註WalkonNet其它相關文章!

推薦閱讀: