switch ステートメントを実装する関数を見つけました -->
File = open('/file.txt','r')
String = File.readline()
String = str(String)
print String
for case in switch(String):
if case("Head"):
print "test successed"
break
if case("Small"):
print String
break
if case("Big"):
print String
break
if case():
print String
break
印刷時の文字列値はHeadですが、switchステートメントは常に最後のケースになります.. v = "Head"で文字列を変更したときに機能したため、関数は明らかに正常に機能します!!!
何がうまくいかなかったのですか?
スイッチ機能 -->
class switch(object):
def __init__(self, value):
self.value = value
self.fall = False
def __iter__(self):
"""Return the match method once, then stop"""
yield self.match
raise StopIteration
def match(self, *args):
"""Indicate whether or not to enter a case suite"""
if self.fall or not args:
return True
elif self.value in args: # changed for v1.5, see below
self.fall = True
return True
else:
return False