Ich arbeite an einem Projekt, wo wir die Anzahl der Wörter finden müssen und auch keine Vorkommen eines bestimmten Wortes finden.AttributError: 'Modul' Objekt hat kein Attribut 'Datei'
Testing.py
import unittest
import sys
import string
import funs
from funs import *
empty_list =[]
count = 0
file_name = sys.argv[1]
search = sys.argv[2]
with open(file_name,'r') as f:
for line in f:
for word in line.split():
#Effective Way
word = word.translate(None, string.punctuation)
word = word.lower();
empty_list.append(word)
count += 1
class TestMyFunction(object):
def test_search(self):
self.assertTrue(search_word_fun(empty_list,'kiran'),0)
if __name__ == '__main__':
unittest.main(exit=False)
funs.py
def longest_word_fun(empty_list,longest_word):
for each_word in empty_list:
if (len(each_word) == len(longest_word)):
print each_word
def search_word_fun(empty_list,search):
print "No of times %s occurs is %d"%(search,empty_list.count(search))
def count_word_fun(count):
print "No of words in file is %d"%(count)
Fehlerprotokoll:
python testing.py file.txt he
Traceback (most recent call last):
File "testing.py", line 27, in <module>
unittest.main()
File "/usr/lib/python2.7/unittest/main.py", line 94, in __init__
self.parseArgs(argv)
File "/usr/lib/python2.7/unittest/main.py", line 149, in parseArgs
self.createTests()
File "/usr/lib/python2.7/unittest/main.py", line 158, in createTests
self.module)
File "/usr/lib/python2.7/unittest/loader.py", line 130, in loadTestsFromNames
suites = [self.loadTestsFromName(name, module) for name in names]
File "/usr/lib/python2.7/unittest/loader.py", line 100, in loadTestsFromName
parent, obj = obj, getattr(obj, part)
AttributeError: 'module' object has no attribute 'file'
Hier habe ich die Testdatei nehme und während die Argumente als eine als normale Ausführung Textdatei und anderes Argument ist das Such-Keyword.So muss es testen, ob es von Unittest funktioniert oder nicht.
Während der Ausführung der Funktion kam der Fehler.
Mögliche Duplikat [Befehlszeilenaufruf von Unittests von \ _ \ _ Haupt \ _ \ _ andernfalls] (http : //stackoverflow.com/questions/41404922/command-line-invocation-of-ittetssts-from-main-failing) –