Как я мог бы использовать функцию if для проверки, является ли количество индексов истинным или ложным?

#string #if-statement #indexing #printing

Вопрос:

Я буквально только начал самостоятельно обучаться программированию и решил начать с Python. Когда я выполнял самые первые несколько упражнений, я подумал про себя, как я могу написать что-то, что говорит мне, соответствует ли количество индексов строки тому, что я думаю? Что-то вроде

 astring = "Hello world!"
if (astring.index ("H") = 0) = True
print true
 

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

РЕДАКТИРОВАТЬ: спасибо всем за полезные ответы! интересно видеть, что существует несколько путей к одному и тому же решению. приветствия!

Ответ №1:

 my_string = "Hello world"
if (my_string[0] == "H"):
    print(True)
else:
    print(False)
 

my_string[0] обращается к 0-му элементу (символу) в слове, и == это компаратор

Ответ №2:

Вы можете искать string index() . Он возвращает индекс символа в строке.

 if (astring.index("H")) == 0:
   print("True")
 

Ответ №3:

Добро пожаловать в удивительный мир PowerShell.

Способ PowerShell может быть таким:

 $string = "Hello World"
If ($string.indexof("H") -eq 0) {"Do Something"}
 

indexOf(«H») возвращает позицию индекса H в данном случае 0. Сравните это с параметром -eq, и все готово.

Комментарии:

1. Кажется, я не могу заставить этот метод работать, он выдает синтаксическую ошибку в 0

2. заставил его работать таким образом, если (astring.index(«H») == 0): print («Do Something») с использованием indexof выдает ошибку: Трассировка (последний последний вызов): файл «<stdin>», строка 2, в <module> if (astring.indexof(«H») == 0): print («Сделать что-нибудь») Ошибка атрибута: объект ‘str’ не имеет атрибута ‘indexof’