>  it's (minimally) slower

Performance difference between this approaches less than zero.

>  i can't see a pattern in its use

rule is simple - if it possible, use the import module

``` python
from distutils import spawn
```
import module, not function

``` python
from flask.ext import wtf
from google.appengine.api import app_identity
from google.appengine.ext import ndb
```
again

``` python
from google.appengine.api import mail
from google.appengine.ext import deferred
from google.appengine.tools.devappserver2.python import stubs
from google.appengine.ext import blobstore
```
and again

``` python
from flask.ext import login
from flask.ext import oauth
from google.appengine.api import users
from google.appengine.ext import ndb
```
and again

``` python
from google.appengine.api import mail
from google.appengine.ext import deferred
```
and again... and again... and again... Only a few times directly imported functions, classes or variables (e.g. ```from datetime import date time``` or ```from uuid import uuid4``` ).

P.S. I'm not syntax and code style maniac as @lipis but code convention is code convention :)