karoly.kiripolszky wrote: > in my server i use the following piece of code: > > ims = self.headers["if-modified-since"] > if ims != None: > t = int(ims) > > and i'm always getting the following error: > > t = int(ims) > ValueError: invalid literal for int(): None > > i wanna know what the hell is going on... first i tried to test using > is not None, but it makes no difference. > > sorry i forgot, it's interpreter 2.4.4.
Instead of the None singleton... >>> int(None) Traceback (most recent call last): File "<stdin>", line 1, in ? TypeError: int() argument must be a string or a number ...you seem to have the /string/ "None" in your dictionary >>> int("None") Traceback (most recent call last): File "<stdin>", line 1, in ? ValueError: invalid literal for int(): None While the immediate fix would be if ims != "None": t = int(ims) there is probably an erroneous self.header["if-modified-since"] = str(value) elsewhere in your code that you should replace with if value is not None: self.header["if-modified-since"] = str(value) The quoted portion would then become if "if-modified-since" in self.header: t = int(self.headers["if-modified-since"]) Peter -- http://mail.python.org/mailman/listinfo/python-list