Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion Python Interview Questions
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Tim Chase  
View profile  
 More options Oct 30 2007, 3:24 pm
Newsgroups: comp.lang.python
From: Tim Chase <python.l...@tim.thechases.com>
Date: Tue, 30 Oct 2007 14:24:04 -0500
Local: Tues, Oct 30 2007 3:24 pm
Subject: Re: Python Interview Questions
 > I have used Python for a couple of projects last year and
 > I found it extremely useful. I could write two middle size
 > projects in 2-3 months (part time). Right now I am a bit
 > rusty and trying to catch up again with Python.
 >
 > I am now appearing for Job Interviews these days and I am
 > wondering if anybody of you appeared for a Python
 > Interview. Can you please share the questions you were
 > asked. That will be great help to me.

While I haven't interviewed precisely for Python, I've been
on the other (interviewing) end and can offer a few of the
sorts of things I ask.  I don't expect perfect answers to
all of them, but they show me a range of what the
interviewee knows.  I try and give a scattershot of
questions from the following areas to try and narrow down
where they fall in terms of pythonability, and then grill
more deeply around the edges that I find.

Basic Python:
=============
- do they know a tuple/list/dict when they see it?

- when to use list vs. tuple vs. dict. vs. set

- can they use list comprehensions (and know when not to
   abuse them? :)

- can they use tuple unpacking for assignment?

- string building...do they use "+=" or do they build a list
   and use .join() to recombine them efficiently

- truth-value testing questions and observations (do they
   write "if x == True" or do they just write "if x")

- basic file-processing (iterating over a file's lines)

- basic understanding of exception handling

Broader Basic Python:
=====================
- questions about the standard library ("do you know if
   there's a standard library for doing X?", or "in which
   library would you find [common functionality Y]?")  Most
   of these are related to the more common libraries such as
   os/os.path/sys/re/itertools

- questions about iterators/generators

- questions about map/reduce/sum/etc family of functions

- questions about "special" methods (__<foo>__)

More Advanced Python:
=====================
- can they manipulate functions as first-class objects
   (Python makes it easy, but do they know how)

- more detailed questions about the std. libraries (such as
   datetime/email/csv/zipfile/networking/optparse/unittest)

- questions about testing (unittests/doctests)

- questions about docstrings vs. comments, and the "Why" of
   them

- more detailed questions about regular expressions

- questions about mutability

- keyword/list parameters and unpacked kwd args

- questions about popular 3rd-party toolkits (BeautifulSoup,
   pyparsing...mostly if they know about them and when to use
   them, not so much about implementation details)

- questions about monkey-patching

- questions about PDB

- questions about properties vs. getters/setters

- questions about classmethods

- questions about scope/name-resolution

- use of lambda

Python History:
===============
- decorators added in which version?

- "batteries included" SQL-capible DB in which version?

- the difference between "class Foo" and "class Foo(object)"

- questions from "import this" about pythonic code

Python Resources:
=================
- what do they know about various Python web frameworks
   (knowing a few names is usually good enough, though
   knowledge about the frameworks is a nice plus) such as
   Django, TurboGears, Zope, etc.

- what do they know about various Python GUI frameworks and
   the pros/cons of them (tkinter, wx, pykde, etc)

- where do they go with Python related questions (c.l.p,
   google, google-groups, etc)

Other Process-releated things:
==============================
- do they use revision control
   (RCS/CVS/Subversion/Mercurial/Git...anything but VSS) and
   know how to use it well

- do they write automated tests for their code

Touchy-feely things:
====================
- tabs vs. spaces, and their reasoning

- reason for choosing Python

- choice of editor/IDE

Good luck with your interviewing and hope this helped,

-tkc


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.