diff --git a/pybars/_compiler.py b/pybars/_compiler.py
index <HASH>..<HASH> 100644
--- a/pybars/_compiler.py
+++ b/pybars/_compiler.py
@@ -199,6 +199,8 @@ class Scope:
             return self.last
         if name == 'this':
             return self.context
+        if isinstance(name, str) and hasattr(self.context, name):
+            return getattr(self.context, name)
 
         try:
             return self.context[name]
diff --git a/pybars/tests/test_acceptance.py b/pybars/tests/test_acceptance.py
index <HASH>..<HASH> 100644
--- a/pybars/tests/test_acceptance.py
+++ b/pybars/tests/test_acceptance.py
@@ -606,6 +606,17 @@ class TestAcceptance(TestCase):
         self.assertEqual("goodbye! Goodbye! GOODBYE! cruel world!",
             render(source, context))
 
+    def test_context_with_attrs(self):
+        class TestContext():
+            @property
+            def text(self):
+                return 'Goodbye'
+
+        source = u"{{#each .}}{{text}}! {{/each}}cruel world!"
+        context = [TestContext()]
+        self.assertEqual("Goodbye! cruel world!",
+            render(source, context))
+
     def test_each(self):
         source = u"{{#each goodbyes}}{{text}}! {{/each}}cruel {{world}}!"
         context = {'goodbyes':
Added support for using object attributes in scopes