Replace boolean test with is None.
diff --git a/Lib/sgmllib.py b/Lib/sgmllib.py
index bdca8a6..021c8b5 100644
--- a/Lib/sgmllib.py
+++ b/Lib/sgmllib.py
@@ -479,7 +479,7 @@
 def test(args = None):
     import sys
 
-    if not args:
+    if args is None:
         args = sys.argv[1:]
 
     if args and args[0] == '-s':
diff --git a/Lib/shlex.py b/Lib/shlex.py
index e50b9ad..7ffa79c 100644
--- a/Lib/shlex.py
+++ b/Lib/shlex.py
@@ -12,7 +12,7 @@
 class shlex:
     "A lexical analyzer class for simple shell-like syntaxes."
     def __init__(self, instream=None, infile=None):
-        if instream:
+        if instream is not None:
             self.instream = instream
             self.infile = infile
         else:
@@ -47,7 +47,7 @@
         self.instream = newstream
         self.lineno = 1
         if self.debug:
-            if newfile:
+            if newfile is not None:
                 print 'shlex: pushing to file %s' % (self.infile,)
             else:
                 print 'shlex: pushing to stream %s' % (self.instream,)
@@ -188,9 +188,9 @@
 
     def error_leader(self, infile=None, lineno=None):
         "Emit a C-compiler-like, Emacs-friendly error-message leader."
-        if not infile:
+        if infile is None:
             infile = self.infile
-        if not lineno:
+        if lineno is None:
             lineno = self.lineno
         return "\"%s\", line %d: " % (infile, lineno)
 
diff --git a/Lib/shutil.py b/Lib/shutil.py
index 6e3a276..4340127 100644
--- a/Lib/shutil.py
+++ b/Lib/shutil.py
@@ -122,7 +122,7 @@
             exc = sys.exc_info()
             if ignore_errors:
                 pass
-            elif onerror:
+            elif onerror is not None:
                 onerror(cmd[0], cmd[1], exc)
             else:
                 raise exc[0], (exc[1][0], exc[1][1] + ' removing '+cmd[1])
diff --git a/Lib/smtplib.py b/Lib/smtplib.py
index 62b19bd..4311d1a 100755
--- a/Lib/smtplib.py
+++ b/Lib/smtplib.py
@@ -236,7 +236,7 @@
             (code, msg) = self.connect(host, port)
             if code != 220:
                 raise SMTPConnectError(code, msg)
-        if local_hostname:
+        if local_hostname is not None:
             self.local_hostname = local_hostname
         else:
             # RFC 2821 says we should use the fqdn in the EHLO/HELO verb, and
diff --git a/Lib/sre_compile.py b/Lib/sre_compile.py
index e48be72..1c54f67 100644
--- a/Lib/sre_compile.py
+++ b/Lib/sre_compile.py
@@ -145,7 +145,7 @@
 def _compile_charset(charset, flags, code, fixup=None):
     # compile charset subprogram
     emit = code.append
-    if not fixup:
+    if fixup is None:
         fixup = lambda x: x
     for op, av in _optimize_charset(charset, fixup):
         emit(OPCODES[op])
diff --git a/Lib/sre_parse.py b/Lib/sre_parse.py
index a5a8831..1b52967 100644
--- a/Lib/sre_parse.py
+++ b/Lib/sre_parse.py
@@ -80,7 +80,7 @@
     def opengroup(self, name=None):
         gid = self.groups
         self.groups = gid + 1
-        if name:
+        if name is not None:
             ogid = self.groupdict.get(name, None)
             if ogid is not None:
                 raise error, ("redefinition of group name %s as group %d; "
@@ -97,7 +97,7 @@
     # a subpattern, in intermediate form
     def __init__(self, pattern, data=None):
         self.pattern = pattern
-        if not data:
+        if data is None:
             data = []
         self.data = data
         self.width = None