使用范围的字符串数组

时间:2014-08-21 01:06:13

标签: python arrays list

我想在python中创建一个文件名数组。 在Perl中,我会这样写:

my @array = qw (name00 .. name100)

foreach my $i (01..100)
{
     push(@array,$i);
}

在Python中有类似的方法吗?

1 个答案:

答案 0 :(得分:7)

我对Perl并不熟悉,但如果我理解你在做什么的要点:

单行列表理解

>>> myArray = ['file' + str(i) for i in range(1,101)]
>>> myArray
['file1', 'file2', 'file3', 'file4', 'file5', 'file6', 'file7', 'file8', 'file9', 'file10', 'file11', 'file12', 'file13', 'file14', 'file15', 'file16', 'file17', 'file18', 'file19', 'file20', 'file21', 'file22', 'file23', 'file24', 'file25', 'file26', 'file27', 'file28', 'file29', 'file30', 'file31', 'file32', 'file33', 'file34', 'file35', 'file36', 'file37', 'file38', 'file39', 'file40', 'file41', 'file42', 'file43', 'file44', 'file45', 'file46', 'file47', 'file48', 'file49', 'file50', 'file51', 'file52', 'file53', 'file54', 'file55', 'file56', 'file57', 'file58', 'file59', 'file60', 'file61', 'file62', 'file63', 'file64', 'file65', 'file66', 'file67', 'file68', 'file69', 'file70', 'file71', 'file72', 'file73', 'file74', 'file75', 'file76', 'file77', 'file78', 'file79', 'file80', 'file81', 'file82', 'file83', 'file84', 'file85', 'file86', 'file87', 'file88', 'file89', 'file90', 'file91', 'file92', 'file93', 'file94', 'file95', 'file96', 'file97', 'file98', 'file99', 'file100']

出于学习目的,这是在Python中逐步完成的方法

myArray = []                     # initialize an empty array
for i in range(1,101):           # range produces a list [1,2,3, ... 99, 100]
    fileName = 'file' + str(i)   # converts i to string, then performs concatenation
    myArray.append(fileName)     # appends the concatenated string to the array