首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

[D]dive into python里面有句不明白

2012-03-26 
[D]dive into python里面有句不明白,请指教第五章:Python codedef __setitem__(self, key, item):if key

[D]dive into python里面有句不明白,请指教
第五章:

Python code
def __setitem__(self, key, item):                if key == "name" and item:                      self.__parse(item)                       FileInfo.__setitem__(self, key, item)

这里面 if key == "name" and item: 让我费解,请问是判断 key是否等于 "name" and item 吗?
---------------------
Double行动:
原帖分数:20
加分:20

[解决办法]
你看看Python 运算符优先级表:http://www.fzs8.net/python/2007-07-11/7804.html
逻辑运算符的优先级低于比较运算符,所以,先判断==,再and。
[解决办法]
if key == "name" and item:
首先判断key == "name" 如果True 则再判断 item
其中item不为False,'',[],{},(),0 等的时候 都判定为True

我猜想你这里是判断key == 'name' 然后呢 判断item是不是为空,如果不为空,即执行条件语句
[解决办法]
这样写不知道正确不,但有助你理解
Python code
if ((key == "name") and (item == True)): 

热点排行