Python
容器資料型態
list
创建

声明一个 Python list: 语法和示例

在本文中,我们将研究在 Python 中声明 list 的不同方法。

下面是我们要介绍的内容:

  • 声明和初始化一个空 list
  • 声明一个二维列表
  • 使用range()for语句声明列表
  • 声明给定长度的列表
  • 声明字符串、类等的列表
  • 声明全局变量列表

1. 声明一个空 list

在 Python 中声明和初始化空 list 有几种方法。下面是一些例子

1.1. 使用括号

首先,你可以使用空括号声明,像这样

my_list = []

1.2. 使用list()函数

下面是如何使用list()函数初始化一个空列表。

my_list = list()

2. 声明二维空列表

创建二维空列表时,也可以使用方括号来定义,如下所示

matrix = [ [], [] ]

大多数情况下,通过指定行数和列数来创建。

2.1. 使用for语句声明二维列表

要做到这一点,您可以使用一个for循环,如下所示

rows = 3
cols = 4
 
my_list = []
for _ in range(rows):
    inner_list = []
    for _ in range(cols):
        inner_list.append(None)
    my_list.append(inner_list)

2.2. 使用列表压缩声明二维列表

另外,你也可以使用列表理解来编写更简单的代码。

rows = 3
cols = 4
 
my_list = [[None for _ in range(cols)] for _ in range(rows)]
 
# Output
[
    [None, None, None, None],
    [None, None, None, None],
    [None, None, None, None]
]

3. 使用 range() 函数声明任意长度的 list

Python list 不是一个长度可以指定或限定的数据类型。 要声明一个特定长度的 list,必须使用一个假值来代替。

下面的示例代码通过填充 0 来声明一个任意长度的 list。 您可以使用 range() 函数编写类似的代码。

list_count = 5
list_5 = [ 0 for _ in range(list_count) ]
 
# output
[0, 0, 0, 0, 0]

3.1. 声明特定字符串或类的列表

使用上述相同的方法,您可以轻松地声明一个任意长度的给定字符串或类的列表。

例如,您可以遍历一个给定的字符串,或者创建一个包含以下内容的列表

list_count = 5
list_5_a = [ 'a' for _ in range(list_count) ]
 
# output
['a', 'a', 'a', 'a', 'a']

您也可以使用chr()函数来表示不同于以下内容的字符串、

row = 4
col = 3
 
matrix = [ [chr(97 + i + j) for i in range(col)]  for j in range(row)]
 
# output
[['a', 'b', 'c'],
 ['b', 'c', 'd'],
 ['c', 'd', 'e'],
 ['d', 'e', 'f']]

也可以声明特定类的列表。

class Student:
    def __init__(self, age):
        self.age = age
 
    def __repr__(self):
        return f'Student(age:{self.age})'
 
    def __str__(self):
        return f'Student(age:{self.age})'
 
list_count = 5
matrix  = [ Student(age) for age in range(list_count) ]
 
# output
[Student(age:0), Student(age:1), Student(age:2), Student(age:3), Student(age:4)]

4. 声明一个全局变量列表

Python 没有单独的函数来声明全局变量;所有在顶层作用域中声明的变量都可以作为全局变量使用。

如果你需要声明一个特定的 list 作为全局变量,你可以通过在 list 变量前加上 global 关键字,在其它作用域中使用它,比如函数。

# init as global
my_list = []
 
def add_to_list(value):
    global my_list
    my_list.append(value)
 
add_to_list(1)
add_to_list(2)
print(my_list)
 
# Output: [1, 2]

结论

我们已经看到了几种声明 Python list 的不同方法。 它很简单,但也是所有数据结构声明的基础。

我希望这篇文章能对你的实际开发有所帮助。

copyright for 声明一个 Python list: 语法和示例

© 2023 All rights reserved.