2015-07-09 2 views
-2
a = [-1, 1, 66.25, 333, 333, 1234.5] 
print a[4][1]; #it prints 3 

Есть ли способ сделать это на Perl.Как выполнить массивную часть в Perl

+4

Как ... что? – hobbs

+0

Я хочу попытаться сломать большое число, num = 23345566699696960505930292020, в каждую цифру. Я знаю, что в Python я могу сделать что-то вроде num [4], вернет пятый элемент этого большого числа. Есть ли способ сделать это в Perl? – noelvillaman

+1

[split] (http://perldoc.perl.org/functions/split.html) или [substr] (http://perldoc.perl.org/functions/substr.html). Строка не является массивом и не может быть проиндексирована как массив. – hobbs

ответ

2

Я согласен с Hobbs ... но быть ясно, в вашем примере выше, я думаю, что это то, что вы хотите от Perl:

my @a = (-1, 1, 66.25, 333, 333, 1234.5); 
print substr ($a[4], 1, 1); #it prints 3 

К сожалению, этот пример немного неоднозначным, так как 4 и 1 оба основаны на нуле, и я действительно не был уверен, какой 333 вы хотели или какая цифра среди 333 вы хотели ... Является ли Python нулевой? Я уверен, что это было непреднамеренно, но это был худший пример партии.

Может быть, это один лучше:

print substr ($a[5], 3, 1); # prints '4' from '1234.5' 
Смежные вопросы