diff --git a/whitelist_python.py b/whitelist_python.py
new file mode 100644
index 0000000..8e459e6
--- /dev/null
+++ b/whitelist_python.py
@@ -0,0 +1,4 @@
+import collections
+
+collections.defaultdict(list).default_factory = None
+collections.defaultdict(list).default_factory

diff --git a/tests/test_whitelist_python.py b/tests/test_whitelist_python.py
new file mode 100644
index 0000000..3529af0
--- /dev/null
+++ b/tests/test_whitelist_python.py
@@ -0,0 +1,15 @@
+import subprocess
+import sys
+
+from .test_script import call_vulture, REPO
+
+whitelist_file = 'whitelist_python.py'
+
+
+def test_whitelist_python_with_python():
+    assert subprocess.call(
+        [sys.executable, whitelist_file], cwd=REPO) == 0
+
+
+def test_whitelist_python_with_vulture():
+    assert call_vulture([whitelist_file]) == 0

Whitelist defaultdict.default_factory
Originally reported by: **bitserver (Bitbucket: [bitserver](https://bitbucket.org/bitserver), GitHub: [bitserver](https://github.com/bitserver))**

----------------------------------------

I have a collections.defaultdict(). After I have finished populating it, I have to set its default_factory attribute to None. vulture then tells me that default_factory is an unused attribute, but I can't help it, as that's how defaultdict works.

----------------------------------------
- Bitbucket: https://bitbucket.org/jendrikseipp/vulture/issue/21

tests/test_whitelist_python.py::test_whitelist_python_with_python tests/test_whitelist_python.py::test_whitelist_python_with_vulture