Любая строка, число, функция, массив, и т.п. в Python — это объект какого-то класса.
Мы подробно к этому вернемся, когда будем рассматривать объектноориентированное программирование, но сейчас важно запомнить основы:
1. У любого объекта есть какое-то значение и свой тип.
2. Для каждого типа определены шаблонные действия, которые как-то используют по шаблону данные этого объекта. Такие штуки называются методами.
Методы вызываются обычно так:
"hello".upper()
Конкретно в данном случае строка преобразуется в "HELLO", то есть все ее символы станут заглавными. У строк есть два похожих по смыслу метода: lower и title. Попробуйте запустить саблайм и посмотреть, что они делают для разных строк (ну, или хотя для для строки со стоящей нестандартно заглавной, например, "саТУрн").
В Python нет многострочных комментариев, все, что идет в строке, начиная с символа #, считается комментарием и не считывается интерпретатором, пока строка не кончится. Комментарии удобно использовать для напоминаний себе же о том, что делает какой-то сложный блок кода, или для того, чтобы временно убирать часть логики (при тестировании, например).
# эта строчка игнорируется
# эта тоже
# ## # # # # можно передавать послание потомкам
# ## # # # # предварительно зашифровав его в комментариях
# закомментированные куски кода не выполняются
# print("привет")
# в любой момент можно вернуться к коду
print("hello")
# комментарий на этой же строке
# эту строчку тоже проигнорируют