python中tile函数的详细用法
tile
函数是 Python 内置的函数之一,用于将指定的序列重复指定的次数,将结果返回为一个新的序列。tile
函数可以用于很多场景,例如生成一组重复的数据作为训练数据、生成重复的图案等。在本文中,我们将详细介绍 tile
函数的用法,帮助大家更好地了该函数。
语法
tile
函数的语法如下:
numpy.tile(arr, reps)
其中,arr
代表输入的数组,reps
代表需要重复的次数或者是用于指定返回的新数组的形状的元组,返回的是重复后的新数组。
参数
tile
函数有两个参数:
arr
:输入的数组,可以是列表、元组、数组等。reps
:需要重复的次数或者是用于指定返回的新数组的形状的元组。
如果 reps
是一个整数,表示重复 arr
整数次。如果 reps
表示的是一个元组,则表示使用该元组中的整数分别重复 arr
中的每个维度。如果 reps
中的维度少于 arr
的维度,则会在 reps
中添加维度 1。
返回值
重复后的新数组。
示例
下面是 tile
函数的一些示例代码,可以帮助大家更好地了解该函数的用法:
示例 1:重复列表
import numpy as np
a = [1, 2, 3]
b = np.tile(a, 3)
print(b)
# 输出结果:array([1, 2, 3, 1, 2, 3, 1, 2, 3])
在本例中,我们定义了一个列表 a
,然后使用 tile
函数将其重复 3 次,将结果赋值给 b
。最终,通过打印 b
,我们可以看到得到了重复了 3 次的新数组。
示例 2:重复元组
import numpy as np
a = (1, 2, 3)
b = np.tile(a, 3)
print(b)
# 输出结果:array([1, 2, 3, 1, 2, 3, 1, 2, 3])
在本例中,我们定义了一个元组 a
,然后使用 tile
函数将其重复 3 次,将结果赋值给 b
。重复后的结果与示例 1 相同。
示例 3:重复数组
import numpy as np
a = np.array([[1, 2], [3, 4]])
b = np.tile(a, 2)
print(b)
# 输出结果:array([[1, 2, 1, 2],
# [3, 4, 3, 4]])
在本例中,我们首先创建了一个二维数组 a
,然后使用 tile
函数将其沿着第一个维度重复 2 次(即沿着行方向重复 2 次),将结果赋值给 b
。最终,通过打印数组 b
,我们可以发现,每行都重复了 2 次。
示例 4:指定形状重复
import numpy as np
a = np.array([1, 2, 3])
b = np.tile(a, (2, 2))
print(b)
# 输出结果:array([[1, 2, 3, 1, 2, 3],
# [1, 2, 3, 1, 2, 3]])
在本例中,我们首先创建了一个一维数组 a
,然后使用 tile
函数将其沿着两个维度分别重复 2 次(即重复 2 行 2 列),将结果赋值给 b
。最