1

これまでのところ、私はこのコードを書いています:

"""test""" 
from collections import Counter
FOR_ = 0
WHILE_ = 0
SAUCE_ = None
IF_ = 0
DEF_ = 0
INPUT_ = input("Enter file or directory: ")
print ("Enter file or directory: {0}".format(INPUT_))
print ("Filename {0:>20}".format(INPUT_))
BEE_ = open(INPUT_)
CEE_ = BEE_.readlines()
CAT_ = (str(CEE_))
FAT_ = CAT_.strip()
with open(INPUT_) as EFF_:
    i = 1
    for SAUCE_ in EFF_:
        if i == (int(2)):
            break
        i += 1
    DEE_ = list((SAUCE_))
NNN_ = (DEE_[8:-4])
GGG_ = ''.join(NNN_)
print ("Author {0:>29}".format(GGG_))
if len(CEE_)<=9:
    print ("lines_of_code {0:>8}".format((len (CEE_))))
elif len(CEE_)>=10:
    print ("lines_of_code {0:>9}".format((len (CEE_))))
COUNTER_ = Counter(str(CEE_))
for LINE_ in CEE_:
    if  ("for ") in LINE_:
        FOR_ += 1
for LINE_ in CEE_:
    if  ("while ") in LINE_:
        WHILE_ += 1
for LINE_ in CEE_:
    if  ("def if ") in LINE_:
        IF_ += 0
        AYE_ = IF_
    elif ("if ") in LINE_:
        IF_ += 1
        AYE_ = IF_
for LINE_ in CEE_:
    if  ("def ") in LINE_:
        DEF_ += 1
print ("for_loops {0:>12}".format((FOR_)))
print ("while_loops {0:>10}".format((WHILE_)))
print ("if_statements {0:>8}".format((AYE_)))
print ("function_definitions {0}".format((DEF_)))
print ("multiplications {0:>6}".format((COUNTER_['*']))) 
print ("divisions {0:>12}".format((COUNTER_['/'])))
print ("additions {0:>12}".format((COUNTER_['+'])))
print ("subtractions {0:>9}".format((COUNTER_['-'])))

ここまでは、単語 for、def、if、while のすべてのインスタンスをカウントしています。しかし、私がやりたいことは、これらの単語の前にこれらの単語がない場合にのみ、これらの単語のそれぞれを数えることです。例えば:

for def if

のみとしてカウントされます。

また、ファイル内のハッシュが続くものもすべて無視したいと思います。

#for you

for としてカウントされません。

どんな助けでも大歓迎です。

4

0 に答える 0