Найти - Пользователи
Полная версия: нужен совет
Начало » Python для новичков » нужен совет
1 2
Nata
добрый вечер,
прошу прощения, я новичок и сразу начинаю новую тему, но мне очень нужна помощь
нам задали 5 задач, с 2мя у меня проблемы
два задания: 1.Read the string from the standart input. Print all groups of 2 characters which contain the same letter.
2. Using REMOVE delete all the odd numbers from the list.
задания простые, но есть условие:нельзя использовать import re для 1 и def для 2;
без regular expressions я даже список на группы разбить не смогу(полный noob), а 2 не работает.
не могли бы вы мне указать,в чем моя ошибка в задании 2 и что-нибудь посоветовать с 1
заране большое спасибо
print "Homework 2"
num_el=input("Enter the number of elements in the list: ")
new_li=[]

for x in range(num_el):
your_num=input("Add a number to the list: ")
new_li.append(your_num)
print "Your list includes: ", new_li
for i in new_li:
if new_li[i]%2==1:
new_li.remove(i)
print "Your new list is",new_li
appetito
Nata
добрый вечер,
прошу прощения, я новичок и сразу начинаю новую тему, но мне очень нужна помощь
нам задали 5 задач, с 2мя у меня проблемы
два задания: 1.Read the string from the standart input. Print all groups of 2 characters which contain the same letter.
2. Using REMOVE delete all the odd numbers from the list.
задания простые, но есть условие:нельзя использовать import re для 1 и def для 2;
без regular expressions я даже список на группы разбить не смогу(полный noob), а 2 не работает.
не могли бы вы мне указать,в чем моя ошибка в задании 2 и что-нибудь посоветовать с 1
заране большое спасибо
print "Homework 2"
num_el=input("Enter the number of elements in the list: ")
new_li=[]

for x in range(num_el):
your_num=input("Add a number to the list: ")
new_li.append(your_num)
print "Your list includes: ", new_li
for i in new_li:
if new_li[i]%2==1:
new_li.remove(i)
print "Your new list is",new_li
вместо if new_li%2==1: нужно писать if i%2==1: так как i в цикле является элементом а не индексом элемента
Vader
1.
for i in range(len(mystring)-1):
if mystring[i]==mystring[i+1]: print mystring[i]+mystring[i+1]
2.
for i in range(len(new_li)):
if i%2:
new_li.remove(i)
Nata
да, я сначала так и написала,
if i%2==1
но программа выдает ошибку: ValueError: list.remove(x): x not in list

я пробовала:
for i in range(len(new_li)):
if i%2:
new_li.remove(i)
та же ошибка.
P.S. спасибо большое за 1, мой код был слишком мудреным и корявым(он внизу), а Ваш простой и понятный
splt=your_text.split()
new_str="".join(splt)
two_char = []
for i in range(0,len(new_str),2):
two_char.append(new_str[i:i+2])
two_char = [x for x in two_char if x[0]==x[1]]
print two_char
Vader
Nata
та же ошибка.
Не удивительно, ибо я че-то не то написал :) Должно быть так:
for i in range(len(new_li)):
if i%2:
new_li.remove(new_li[i])
Nata
for i in range(len(new_li)):
if i%2:
new_li.remove(new_li[i])
опять ошибка, но уже другая: IndexError: list index out of range
guranvir
len(new_li)-1 Попробуйте
Vader
Nata
опять ошибка, но уже другая: IndexError: list index out of range
Выше ответ уже написали.

Да, пожалуй, не стоит в 3 часа ночи на такие вопросы отвечать…
Nata
добрый день,
снова ошибка!
я перепробовала все варианты! что ему не нравится?
Vader
Шо вы такое делаете? 0_о
Вам же выше уже все написали.
for i in range(len(new_li)-1):
if i%2:
new_li.remove(new_li[i])
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