Найти - Пользователи
Полная версия: Range, необычный список
Начало » Python для новичков » Range, необычный список
1 2
qwelip
Требуется построить список с 000 до 999. Таким образом, чтобы элементы начинались так 001, 002, 003 и тд, до 999. После сотни все идет как надо (3х значное число), вопрос как сделать, чтобы так же было и до сотни.
s0rg
Список чего? Строк?
qwelip
Список чего? Строк?
Чисел
s0rg
qwelip
Чисел
В таком случае, прошу просвятить меня, в чем же разница между 1 и 001 ?
qwelip

В таком случае, прошу просвятить меня, в чем же разница между 1 и 001 ?
Нужно чтобы список состоял именно таким образом, а так разницы нет.
s0rg
qwelip
Нужно чтобы список состоял именно таким образом
Зачем это нужно?

P.S.
>>> a = 001
>>> a
1
noob_saibot
Ну можешь в тупую сделать так:
rrrr=[]
for a in xrange(0,999):
    if 10<a<100:
        rrrr.append("0"+str(a))
    elif a<10:
        rrrr.append("00"+str(a))
    elif a>=100:
        rrrr.append(a)
#Вот так потом вытаскивай значения (для примера!)
for m in list(rrrr):
    print (int(m))**2

Но как-то бессмысленно это

PS: а лучше как dimy44 ниже написал))))
dimy44
строки наверняка, иначе смысла не имеет вопрос
lst = ['{0:03d}'.format(i) for i in range(1000)]
п.с. для питон 2 xrange надо, я для 3 привел
malya
Ну можно хранить и список чисел, а при выводе форматировать так как нужно.
JOHN_16
qwelip
вам тут ловко намекают что числа 008 и 009 и т.п. быть не может, ибо приставка 0 перед числами указывает на восьмеричную систему исчисления. Делать то что не существуют может Российская Дума (полезная для государства и граждан действия), а Python нет.
>>> a=001
>>> a
1
>>> b=008
  File "<stdin>", line 1
    b=008
        ^
SyntaxError: invalid token
>>> b=010
>>> b
8
Поэтому нужно оперировать строками. Решение уже предложил dimy44.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB