Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #54614 > unrolled thread

Re: Python Interview Questions

Started byelisha.java@gmail.com
First post2013-09-22 20:58 -0700
Last post2013-09-23 09:06 -0400
Articles 2 — 2 participants

Back to article view | Back to comp.lang.python

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: Python Interview Questions elisha.java@gmail.com - 2013-09-22 20:58 -0700
    Re: Python Interview Questions Roy Smith <roy@panix.com> - 2013-09-23 09:06 -0400

#54614 — Re: Python Interview Questions

Fromelisha.java@gmail.com
Date2013-09-22 20:58 -0700
SubjectRe: Python Interview Questions
Message-ID<dc293747-f96a-40fc-a39c-07b4a702cc02@googlegroups.com>
On Tuesday, October 30, 2007 12:24:04 PM UTC-7, Tim Chase wrote:
> > 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

I appreciate all these. I thought I knew Python!

[toc] | [next] | [standalone]


#54633

FromRoy Smith <roy@panix.com>
Date2013-09-23 09:06 -0400
Message-ID<roy-9EDED5.09064523092013@news.panix.com>
In reply to#54614
Somebody, whose identity has been lost in three-deep quoting, said:
> > > 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.

We have a standard list of about 2 dozen screening questions we use that 
cover a broad but shallow swath of CS, Unix, and Python.  I'm not going 
to share the exact questions, but here's some of the Python topics we 
cover:

The ramifications of string immutability.

How default function arguments work, especially how they interact with 
mutable objects.

How booleans and various ways of testing for equality work.

A question about subclassing a built-in type.

List comprehensions vs. generator expressions.

We don't expect everybody to get every question, but it gives us a quick 
first cut to evaluate applicants before we decide to bring them in for 
an interview or not.

We also want to see that you understand some basic computer science.  If 
nothing else, you need to understand, what O(n) means, and be able to 
give some examples of Python code which exhibit various orders of 
complexity.

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web