Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 21, 2010 19:49:17

breidos
От:
Зарегистрирован: 2010-09-21
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Как найти длину в списке

Помогите найти длину i-го элемента списка.
Пишу так, но питон ругается :(

x=list(range(1,101))
d=len(x[10])
print d



Отредактировано (Сен. 21, 2010 19:49:39)

Офлайн

#2 Сен. 21, 2010 20:03:36

Isem
От:
Зарегистрирован: 2010-08-27
Сообщения: 447
Репутация: +  7  -
Профиль   Отправить e-mail  

Как найти длину в списке

Что вы понимаете под длиной i-го элемента списка, состоящего из целых чисел?



Офлайн

#3 Сен. 21, 2010 20:24:54

grok
От:
Зарегистрирован: 2010-09-09
Сообщения: 74
Репутация: +  0  -
Профиль   Отправить e-mail  

Как найти длину в списке

И будет тебе счастье:

x=list(range(1,101))
d=len(str(x[10]))
print d
А ругался он потому, что ты пытался вычислить длину строки, в то время как, вместо строки у тебя число (type ‘int’).



Отредактировано (Сен. 21, 2010 20:31:21)

Офлайн

#4 Сен. 21, 2010 20:41:32

breidos
От:
Зарегистрирован: 2010-09-21
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Как найти длину в списке

Спасибо grok
Вот теперь я пытаюсь сделать так, чтобы из списка вывелись те числа, которые при делении на свою длину дают остаток. Вот кто посоветует, что я неправильно делаю?

x=list(range(10))
i=1
d=len(str(x[i]))
if x[i]%d<0:
print x[i],
else:
print "Есть остаток при делении"
i=i+1
print x[i]



Офлайн

#5 Сен. 21, 2010 20:58:23

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Как найти длину в списке

некорректное условие: if x%d<0:

и нужно зациклить

Отредактировано (Сен. 21, 2010 20:58:55)

Офлайн

#6 Сен. 21, 2010 21:00:12

grok
От:
Зарегистрирован: 2010-09-09
Сообщения: 74
Репутация: +  0  -
Профиль   Отправить e-mail  

Как найти длину в списке

Можно так сделать:

x=list(range(20))
for key in x:
d=len(str(key))
if key%d != 0:
print key



Офлайн

#7 Сен. 21, 2010 22:30:31

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Как найти длину в списке

Можно еще и убрать лишнее:

for key in range(20):
if key % len(str(key)):
print key



Офлайн

#8 Сен. 22, 2010 05:25:46

Isem
От:
Зарегистрирован: 2010-08-27
Сообщения: 447
Репутация: +  7  -
Профиль   Отправить e-mail  

Как найти длину в списке

И поместить все в один print:

print( [key for key in range(20) if key % len(str(key))] )



Офлайн

#9 Сен. 22, 2010 10:27:04

breidos
От:
Зарегистрирован: 2010-09-21
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Как найти длину в списке

Спасибо всем, вот еще 1 вопросик:
Каким образом можно сосчитать сумму цифр числа? Допустим у числа 3 сумма цифр = 3, у числа 15 сумма = 6.



Офлайн

#10 Сен. 22, 2010 10:41:09

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Как найти длину в списке

sum(int(i) for i in str(123456))



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version