2016-11-21 2 views

ответ

1

Во-первых, не следует использовать имя как list, он маскирует встроенного имени list [См: Built-in Methods], и это может привести к некоторым тонким ошибкам.

После этого есть способы сделать это. Главное, чтобы иметь в виду то, что объектов, как струны, приходят вместе с множеством методов [См .: String Methods], которые действуют на них. Один из этих методов: str.count(sub), который подсчитывает количество раз sub в вашей строке.

Таким образом, создавая счетчик для каждого элемента в lst может быть сделано с помощью for цикла:

lst = ('+','-','*','/') 
string = "33+33-33*33/33" 
for i in lst: 
    print("Item ", i, " occured", str(string.count(i)), "times") 

str(string.count(i)) преобразует целое число результат string.count к str объекта, так что он может быть напечатан print.

Это печатает:

Item + occured 1 times 
Item - occured 1 times 
Item * occured 1 times 
Item/occured 1 times 

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

print(*["Item {} occured {} times".format(x, string.count(x)) for x in lst], sep='\n') 

который печатает аналогичный результат.

Наконец, удостоверьтесь, что вы находитесь на сайте документации Python, но вы можете ознакомиться с этим языком.

+0

Можете ли вы добавить путь, показывающий общее время его возникновения? Кроме того, спасибо, что вы ответили, что это было полезно –

Смежные вопросы