-1
一個LEN()我有一個配置文件是這樣的:名單爲[「」],但顯示的1
[Expected Response]
GlobalResponse:
UniqueResponse:
1221
我想要做的是,如果GlobalResponse
是空的,那麼我們依靠UniqueResponse
被設置。
subConfigParser = ConfigParser.SafeConfigParser(allow_no_value=True)
subConfigParser.read(os.path.join(relativeRunPath, 'veri.cfg'))
commands = subConfigParser.get('Command List', 'commands').strip().split("\n")
expectedResponse = subConfigParser.get('Expected Response', 'GlobalResponse').strip().split("\n")
print expectedResponse
print len(expectedResponse)
if not expectedResponse:
expectedResponse = subConfigParser.get('Expected Response', 'UniqueResponse').strip().split("\n")
print "Size of unique: {}".format(len(expectedResponse))
if len(expectedResponse) != len(commands):
sys.exit(1)
然而,這是輸出我得到:
[''] # print expectedResponse
1 # print len(expectedResponse)
我缺少什麼?
你期待什麼? '['']'是一個包含一個項目的列表,所以它的長度自然是1. – kindall 2014-10-10 15:30:19
你爲什麼要得到'['']'你感到困惑嗎?或者爲什麼'len([''])'等於'1'?後者是預期的行爲。 – CoryKramer 2014-10-10 15:30:37
進一步kindall的評論'[]'是一個列表與len 0 – 2014-10-10 15:30:48