Я решил научиться программировать, и поскольку это то, что все рекомендовали сначала, я начал разрабатывать Python. Я узнал, что я думаю, основы, в последнее время выясняя, если/else утверждения. Я подумал, что это небольшой вызов, я могу попытаться применить большинство вещей, которые я узнал, и взломать небольшую программу, которая что-то сделала. Поэтому я пытаюсь создать скрипт, который может читать файл или найти, есть ли конкретное слово в файле, что дает пользователю выбор. Вот код, который я написал, и не работает.Не могу понять, если/else синтаксис в Python
print "Hello, would you like to read a file or find whether or not some text is in a file?"
choice = raw_input("Type 'read' or 'find' here --> ")
if choice == "read":
readname = raw_input("Type the filename of the file you want to read here -->"
print open(readname).read()
elif choice == "find":
word = raw_input("Type the word you want to find here --> ")
findname = raw_input("Type the filename of the file you want to search here --> ")
if word in open(findname).read():
print "The word %r IS in the file %r" % (word, filename)
else:
print "The word %r IS NOT in the file %r" % (word, filename)
else:
print "Sorry, don't understand that."
Я всего скраб, и вы могли бы, вероятно, сказать, что, глядя на код, но в любом случае помощь будет оценена. Во-первых, Python дает мне синтаксическую ошибку прямо на print
. Это не дает мне ошибку, когда я выделяю переменную строку над ней, поэтому я полагаю, что там есть проблема, но я ничего не могу найти в Интернете. Кроме того, если я выделил переменную строку, как я сказал, но наберите «find», когда я запустил ее (запустив часть elif
). Я получаю сообщение об ошибке, что findname
не определен, но я не могу найти, почему это не будет ? Во всяком случае, я уверен, что это явно очевидно, но эй, я учусь, и я бы с удовольствием, если бы кто-нибудь из вас сказал мне, почему этот код сосет :)
, если вы используете питон 3+, то печать будет вызвать ошибку, так как синтаксис для печати есть: печати («некоторый текст») – PabTorre