Используйте имена файлов, помещенные в список, чтобы найти, какие строки начинаются с определенной подстроки, запутавшисPython

Программы на Python
Ответить
Anonymous
 Используйте имена файлов, помещенные в список, чтобы найти, какие строки начинаются с определенной подстроки, запутавшис

Сообщение Anonymous »

Я пытаюсь определить, сколько имен в введенном пользователем файле начинаются с некоторой введенной пользователем строки. Советы были бы полезны, это для занятий.
Я могу открыть файл и прочитать его, распечатать, сколько в нем имен, а затем спросить, какую подстроку хочет найти пользователь. Все работает, пока я не попытаюсь просмотреть имена в списке и определить, сколько из этих имен содержат подстроку. Не обращайте внимания на странный формат, я над ним работаю.
Он говорит, что n_list не найден, я вернул его в первой функции, чтобы попытаться использовать его во второй функции ниже, но Я не уверен, как и правильно ли я это делаю. Это моя главная проблема. Я не уверен, какое значение использовать для циклического перемещения по списку.
def main():
read_File(file_name)
sub = input("What name (or substring) are you interested in searching for? ")
begins_with(n_list, sub)

def read_File(file_name):
while True:
try:
with open(file_name, "r") as file:
lines = file.readlines()
n_list = [line.strip() for line in lines]
length_list = len(n_list)
for line in file:
n_list.append(line)

print(f"The list has {length_list} names")
return n_list

except FileNotFoundError:
print(f"The file {file_name} was not found.")
break

def begins_with(n_list, sub):
i = 0
begins_with_num = 0
for i in range(len(n_list)):
if n_list.startswith(sub):
begins_with_num += 1
i += 1
print (f"{begins_with_num} names begin with {sub}")
return n_list
else:
print("too bad")
break

file_name = input("What file do you want to open? ")

main()


Подробнее здесь: https://stackoverflow.com/questions/792 ... -substring
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»