python
主页 > 脚本 > python >

Python基础Lists和tuple实例介绍

2022-08-26 | 佚名 | 点击:

Lists

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

1

2

3

if __name__ == '__main__':

    squares = [1, 4, [1, 2], "whf", 25]

    print(squares)

索引和切片

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

1

2

3

4

5

6

7

8

9

10

11

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]

所有切片操作都会返回一个包含请求元素的新列表,被称为原列表的浅副本。

增删改

1

2

3

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无参数就弹出尾部的,有参数可以指定位置:

1

2

3

4

if __name__ == '__main__':

    squares = [1, 4, [1, 2], "whf", 25]

    squares.pop(1)

    print(squares)

输出:

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

1

2

3

4

if __name__ == '__main__':

    squares = [1, 4, [1, 2], "whf", 25]

    squares[0]=0

    print()

输出:

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

连接/拼接

1

2

3

4

5

6

7

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使用括号括起来,使用逗号分隔元素,如果是简单的元组可以不用:

1

2

3

4

5

6

7

8

9

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

解包

1

2

3

t = 1, 2, 3

x, y, z = t

print(x, y, z)

输出:

1 2 3

元素是可变的仍然可变

这个优点像java的final,不能变引用,内容你想变还是可以的:

1

2

3

4

5

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

具名元组,顾名思义就是让普通元组具有名字,方便对元素进行命名和访问:

1

2

3

4

5

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

原文链接:https://juejin.cn/post/7135421305284722702
相关文章
最新更新