Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 16, 2015 10:47:15

Kon52
Зарегистрирован: 2015-01-31
Сообщения: 66
Репутация: +  3  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

FishHook
jobsdata
Если не трудно скажите в какую сторону копать (хочу сам по пробовать сообразить): Полученное число вашим кодом , получить кол-во совпадений с числом полученным из input() ? То есть если выпало число 4521, ввели 4831, совпало два числа, получить кол-во совпавших чисел?

Способов, разумеется миллион. Пожалуй, самым питонячьим будет использовать zip.
Это была подсказка, дальше гуглите.

Покажите, если не затруднит.
Вот получили мы спомощью zip список кортежей с парами строк и….?

Офлайн

#2 Сен. 16, 2015 11:12:29

Kon52
Зарегистрирован: 2015-01-31
Сообщения: 66
Репутация: +  3  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

Попробовал с помощью двух for пройтись сначала по кортежам, затем по их элементам- получается, но слишком много букаф.
Способ с list comprehension, from ayb, гораздо симпатичней.

Офлайн

#3 Сен. 16, 2015 11:18:15

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

Kon52
строк и….
и сравнивайте в этих парах первый элемент со вторым. Вам же это и нужно было, сравнить два числа поциферно.
Разве нет?
Вообще, вы неправильно понимаете цель этого форума. Тут не учат логике, это бессмысленно. Задача элементарнейшая, уже разжеванная. Уже вам сформировали пары цифр для сравнения. И тут ВНЕЗАПНО вопрос: а чем?
Уважаемый, так нельзя.



Офлайн

#4 Сен. 16, 2015 11:20:41

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

d="1234"
dd="3243"
pares = zip(d, dd)
print len([x for x in pares if x[0] == x[1]])



Офлайн

#5 Сен. 16, 2015 11:31:47

Kon52
Зарегистрирован: 2015-01-31
Сообщения: 66
Репутация: +  3  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

Спасибо.

Офлайн

#6 Сен. 16, 2015 11:35:18

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

Kon52
Способ с list comprehension, from ayb, гораздо симпатичней.
То, что написал ayb не решает вашу задачу.



Офлайн

#7 Сен. 16, 2015 11:44:21

Kon52
Зарегистрирован: 2015-01-31
Сообщения: 66
Репутация: +  3  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

from random import sample
generated = "".join(map(str, sample(range(9), 4)))
print(generated)
user_input = input()
print(len([x for x in user_input if x in generated
           and len(user_input) == 4]))

Разве?

Офлайн

#8 Сен. 16, 2015 11:53:26

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

А что, это решение дает правильный ответ?
Вот это верный ответ?



Офлайн

#9 Сен. 16, 2015 12:06:23

ayb
Зарегистрирован: 2014-04-01
Сообщения: 297
Репутация: +  24  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

FishHook
А что, это решение дает правильный ответ?Вот это верный ответ?

получить кол-во совпавших чисел?

Офлайн

#10 Сен. 16, 2015 12:08:18

Kon52
Зарегистрирован: 2015-01-31
Сообщения: 66
Репутация: +  3  -
Профиль   Отправить e-mail  

Замена числа. Есть функция?

Не заметил выделения в оригинальном посте. Индексы важны, теперь всё ясно.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version