Найти - Пользователи
Полная версия: Какая ошибка в коде?
Начало » Python для новичков » Какая ошибка в коде?
1 2 3 4 5
py.user.next
Defalt
Вопрос про for я задал, после прочтения главы в книге которую я купил.
Вообще, сначала качаешь, смотришь качество материала, а потом уже покупаешь. Фуфла-то тоже много.

doza_and
Думаю вы перегибаете палку.
Ничего я не перегибаю. В жизни за всё приходится платить, хочешь ты или нет.

doza_and
Все знания должны быть всем свободно доступны.
Ну, давай ты книгу напишешь, а потом будешь её бесплатно раздавать. Тогда и поговорим :)

doza_and
Утверждения похожи на пугалки, что знания из нелегально скачанных книг выедят вам мозг.
Не мозг выедят, а придут некачественно. То есть человек будет читать и половины не заметит. Потом будет считать, что книжка плохая. А другой из этой же книжки то же самое узнает. Какая разница? Первый - халявщик, второй - честный.
Budulianin
py.user.next
Ну, давай ты книгу напишешь, а потом будешь её бесплатно раздавать. Тогда и поговорим :)

Ты думаешь, что на таких книгах деньги зарабатывают?

py.user.next
То есть человек будет читать и половины не заметит.

По себе судишь? Не все такие.
doza_and
py.user.next
В жизни за всё приходится платить, хочешь ты или нет.
Посмотрите может будет интересно http://www.lib.ru/LINUXGUIDE/torvalds_jast_for_fun.txt
Далеко не все согласятся с этим тезисом, если его понимать в узком смысле.
py.user.next
Ну, давай ты книгу напишешь, а потом будешь её бесплатно раздавать. Тогда и поговорим :)
Вам переслать мои публикации? Они все открытые. Но я конечно не претендую на место профи писателя по питону. :)

Случаи бывают конечно разные, но чаще всего решается конкретная задача, есть конкретный договор, Труд проплачен. В качестве побочки рождаются полезные знания которыми можно поделиться. Создаются программные продукты, обучаются люди, которые потом смогут приложить знания с пользой для себя и других.

p.s.
Я уважаю ваше мнение. Но у меня есть свое. А судя по рейтингу вы помогли людям в изучении питона в 2 раза больше меня :)
Defalt
Решаю задание из книги, пишет ошибку “non-keyword argafter keyword arg” что с кодом не так?
Нужно написать игру с анаграммами, в которой будут подсказки, и очки. Вот написал:

import random
WORDS='Кот, Ответ, Вопрос'
points=100
corect=word
word=random.choise(WORDS)
while word != "": #while word:
    position=random.randrange(len(word))
    jumble+=word[position]#Добавили букву с позиции
    word=word[:position]+word[(position+1)]#Убираем добавленую букву
print("Вот анаграмма ",jumble)#%s" %jumble
variant=input("\nПопробуй угадать слово: ")
while variant!= corect:
    print("""
           Не угадали
           -----------------
           1 Попробовать еще
           2 Дать подсказку
           3 Выйти
           -----------------
           """)
    vubor=int(input("Ваш выбор: "))
    while vubor != 1 or 2 or 3:
        print("""
           Нет такого пункта!
           -----------------
           1 Попробовать еще
           2 Дать подсказку
           3 Выйти
           -----------------
           """)
        vubor=int(input("Ваш выбор: "))
    if vubor==1:
        variant=input("\nПопробуй угадать слово: ")
    elif vubor==2:
        podsk=int(input("Какую букву открыть?"))
        print(podsk,'буква - ',corect[podsk])
        points-=20
    elif vubor==3:
        input("\nНажмите клавишу для выхода")
print("Вы угадали!!! Слово было: ",corect, end='\nОчков набрано: ',points)
input("\nНажмите клавишу для выхода")

И если можете, подскажите можно как-то оптимизировать код, что бы он был поменьше?

P.S: to doza_and
Вы дали ссылку на книгу Линуса Торвальдса ‘Just for fun’. Что вы этим хотели сказать, что там конкретно написано?
Shaman
print(“Вы угадали!!! Слово было: ”,corect, end='\nОчков набрано: ',points)
Касаемо остального кода: напишите то же самое на известном вам языке?
Defalt
Shaman
Касаемо остального кода: напишите то же самое на известном вам языке?
Я только начал учить python (из любопытства). Других ЯП не знаю. В универе был С++, но знания по нему не очень, т.к. желания не было его учить.
P.S: Ну нада же было не заметить такую ошибку ))) Не те скобки поставил.
UPD: Все равно та же ошибка.
Defalt
Синтаксические ошибки исправил. Осталось логику поправить в коде.
import random
WORDS="Кот, Ответ, Вопрос"
points=100
word=random.choice(WORDS)
corect=word
jumble=""
while word != "": #while word:
    position=random.randrange(len(word))
    jumble+=word[position]#Добавили букву с позиции
    word=word[:position]+word[(position+1):]#Убираем добавленую букву
print("Вот анаграмма ",jumble)#%s" %jumble
variant=input("\nПопробуй угадать слово: ")
while variant != corect:
    print("""
           Не угадали
           -----------------
           1 Попробовать еще
           2 Дать подсказку
           3 Выйти
           -----------------
           """)
    vubor=int(input("Ваш выбор: "))
    while vubor != 1 or 2 or 3:
        print("""
           Нет такого пункта!
           -----------------
           1 Попробовать еще
           2 Дать подсказку
           3 Выйти
           -----------------
           """)
        vubor=int(input("Ваш выбор: "))
    if vubor==1:
        variant=input("\nПопробуй угадать слово: ")
    elif vubor==2:
        podsk=int(input("Какую букву открыть?"))
        print(podsk,'буква - ',corect[podsk])
        points-=20
    elif vubor==3:
        input("\nНажмите клавишу для выхода")
print("Вы угадали!!! Слово было: ",corect,"\nОчков набрано: ",points)
input("\nНажмите клавишу для выхода")

Вот ее вывод:
>>> ================================ RESTART ================================
>>>
Вот анаграмма с

Попробуй угадать слово: as

Не угадали
—————–
1 Попробовать еще
2 Дать подсказку
3 Выйти
—————–

Ваш выбор: 1

Нет такого пункта!
—————–
1 Попробовать еще
2 Дать подсказку
3 Выйти
—————–

UPD: Исправил
WORDS="кот", "ответ", "опрос"
Теперь осталось разобратся с частью которая не дает ввести что-то кроме (1,2,3).
Defalt
Что с выбором только 1,2,3 не стал разбиратся. Код и так работает, но при выборе 4+ выводит то же, что и при не правильном вводе анаграммы.
Рабочий код:
import random
WORDS="кот", "ответ", "опрос"
points=100
word=random.choice(WORDS)
corect=word
jumble=""
while word != "": #while word:
    position=random.randrange(len(word))
    jumble+=word[position]#Добавили букву с позиции
    word=word[:position]+word[(position+1):]#Убираем добавленую букву
print("Вот анаграмма ",jumble)#%s" %jumble
variant=input("\nПопробуй угадать слово: ")
while variant != corect:
    print("""
           Не угадали
           -----------------
           1 Попробовать еще
           2 Дать подсказку
           3 Выйти
           -----------------
           """)
    vubor=int(input("Ваш выбор: "))
##    while vubor != 1 or 2 or 3:
##        print("""
##           Нет такого пункта!
##           -----------------
##           1 Попробовать еще
##           2 Дать подсказку
##           3 Выйти
##           -----------------
##           """)
##        vubor=int(input("Ваш выбор: "))
    if vubor==1:
        variant=input("\nПопробуй угадать слово: ")
        points-=1
    elif vubor==2:
        podsk=int(input("Какую букву открыть?"))
        print(podsk,'буква - ',corect[(podsk-1)])
        points-=20
        variant=input("\nПопробуй угадать слово: ")
    elif vubor==3:
        input("\nНажмите клавишу для выхода")
print("Вы угадали!!! Слово было: ",corect,"\nОчков набрано: ",points)
input("\nНажмите клавишу для выхода")
P.S: Но с vubor=int при вводе букв, появляется ошибка. Только цифры.
py.user.next
Budulianin
Ты думаешь, что на таких книгах деньги зарабатывают?

На каких таких?

Budulianin
По себе судишь? Не все такие.

Да повидал пиратов.
Они ничего не знают и не умеют, только красть умеют. Накачают сотню книг и сидят нулями.

doza_and
Далеко не все согласятся с этим тезисом, если его понимать в узком смысле.

doza_and
Вам переслать мои публикации? Они все открытые. Но я конечно не претендую на место профи писателя по питону. :)

Вот теперь возьми это дело, отнеси в издательство, там бесплатно выпусти, а потом раздавай. Одно дело, когда человек бесплатно раздаёт своё, а другое дело, когда он бесплатно не раздаёт своё, а продаёт. Потому что вложил что-то в это.

Лутц бесплатно не раздаёт, скачивание его книг - кража интеллектуальной собственности. Это если юридически обозначать. Но если смотреть на мир через нравственные, а не юридические рамки, то это просто воровство. А воровать что? Правильно, воровать плохо.
Shaman
py.user.next
Но если смотреть на мир через нравственные, а не юридические рамки, то это просто воровство.
Задачка по этике: скачать, потому что информация нужна сейчас, а заплатить потом, потому что нужно заплатить - воровство?
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