Допустим, у меня есть список с 0 или более элементами, как я могу вернуть количество строк в нем без использования count() или других методов, отличных от цикла while? Я попробовал приведенный ниже код, но он продолжает давать сбой.
values = ["one", "two", [], 6]
def count_str(values):
index = 0
while index <= len(values):
if type(values[index]) == str:
index += 1
return index
Проблема в том, что вы используете один и тот же индекс для перебора значений и для подсчета строк... Поэтому, когда это не строка, индекс не изменяется, и цикл никогда не заканчивается. Используйте две переменные.