Уведомления

Группа в Telegram: @pythonsu

#1 Июль 16, 2015 23:42:33

TohaTony
Зарегистрирован: 2015-04-05
Сообщения: 31
Репутация: +  1  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

Всем привет!
x = 5
print(x)
5

и

x = (5)
print(x)
5

Подскажите, пожалуйста, почему два варианта являются верными. Это какой-то рудимент?

Увидел это в книге:
start = (input(“\nНачальная позиция”)) - подумал, наверное опечатка и пропустили int. Но нет, там так и надо, чтобы переменная содержала строковый тип. Удалил скобки - всё работает. Это опечатка или нет?
Если опечатка, то почему это не вызывает ошибки?
Спасибо.

Офлайн

#2 Июль 17, 2015 00:12:59

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9890
Репутация: +  854  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

TohaTony
Если опечатка, то почему это не вызывает ошибки?
Надо код смотреть. Одни скобки ни на что не влияют.



Офлайн

#3 Июль 17, 2015 00:26:12

TohaTony
Зарегистрирован: 2015-04-05
Сообщения: 31
Репутация: +  1  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

py.user.next

word = “пицца”

print(
“”“
Памятка

0 1 2 3 4 5
+—+—+—+—+—+
| п | и | ц | ц | а |
+—+—+—+—+—+
-5 -4 -3 -2 -1


”“”
)


print(“Введите начальный и конечный индексы для того среза \”пиццы\“, который хотите получить.”)
print(“Для выхода нажмите Enter, не вводя начальную позицию”)

start = None

while start != “”:
start = (input(“\nНачальная позиция”))
if start:
start = int(start)
finish = int(input(“Конечная позиция: ”))
print("Срез word выглядит как“, end=” ")
print(word)


input(“\n\nНажмите Enter, чтобы выйти”)

Тут на форуме отступы стираются. if start: в теле цикла while start != “”:
Выглядит вот так:

Отредактировано TohaTony (Июль 17, 2015 00:30:14)

Офлайн

#4 Июль 17, 2015 02:36:16

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

TohaTony
Тут на форуме отступы стираются.
вот, посмотрите
TohaTony
Это какой-то рудимент?
ну а как может быть иначе?

выполняется то что в скобках
потом интерпретатор смотрит, а ничего за скобками нету
ну ок, значит ничего и не нужно с этим делать, подумал он и ничего и не сделал :)

эт как в математике, например
x = (5 + 3)

TohaTony
Увидел это в книге
скорее всего опечатка



————————————————
-*- Simple is better than complex -*-

Офлайн

#5 Июль 17, 2015 03:43:09

TohaTony
Зарегистрирован: 2015-04-05
Сообщения: 31
Репутация: +  1  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

Спасибо!
С математикой все ясно. Сначала то, что в скобках.
И, я так понимаю, это не опечатка переводчиков и издателей, а оригинальный код автора книги. Жаль, сайт с программами уже не работает. Посмотрел бы и там. Ну да ладно. Вот например еще один код (оригинал):
Тут на 20 строке "word“ - опять эти ненужные скобки. Просто исходя из общих правил, что в коде не должно быть ничего лишнего - их нужно удалить. Наверное автор забыл это сделать. Но у меня паранойя . А что, если не забыл? Что если они там для чего-то нужны? Я уже ушел намного дальше по этой книге, но ответа не нашел. У автора есть такая штука, сначала закидывает что-нибудь новенькое и говорит, что раскроет это потом. Но про эти скобки ничего.

20-я строка ”word"

Отредактировано TohaTony (Июль 17, 2015 03:44:23)

Офлайн

#6 Июль 17, 2015 03:57:41

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

но здеся, как мне кажется, автор прост хочет показать что вначале будет к position добавлена единица, а потом уже сума будет учитываться в срезе
на результат эти скобки не влияют



————————————————
-*- Simple is better than complex -*-

Офлайн

#7 Июль 17, 2015 04:11:40

TohaTony
Зарегистрирован: 2015-04-05
Сообщения: 31
Репутация: +  1  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

terabayt
но здеся, как мне кажется, автор прост хочет показать что вначале будет к position добавлена единица, а потом уже сума будет учитываться в срезена результат эти скобки не влияют
Будь вы автором этой книги, вы бы убрали эти скобки, чтобы таких, как я, не сбивать с толку и для чистоты кода в целом?

Офлайн

#8 Июль 17, 2015 05:00:21

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

TohaTony
для чистоты кода в целом
я бы не сказал что это загрязняет код
TohaTony
Будь вы автором этой книги
это вопрос сродни
“Будь Вы Богом, Вы бы …”
если автор посчитал нужным так сделать - эт его право, если вам не нравится, пожалуйста, полно других книг



————————————————
-*- Simple is better than complex -*-

Офлайн

#9 Июль 17, 2015 06:35:57

TohaTony
Зарегистрирован: 2015-04-05
Сообщения: 31
Репутация: +  1  -
Профиль   Отправить e-mail  

Рудимент или опечатка.

terabayt
Спасибо за ссылку на чтиво.

А по поводу книги, она мне очень нравится, но автор мог бы и пояснялку написать. На мой взгляд.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version