This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Utilities for Python programmers with background in other languages.

Project Description

This library provides utilities to use features of other languages in Python.

You can find a functional example of each feature in the examples directory. Test cases in tests directory run on top of these examples to ensure the functionality.

Access Modifiers

To identify a variable as private::

from pythonlangutil.access_modifiers import private_variable

class PrivateVariableTest(object):
   def __init__(self):
       self.id = "123"

   @private_variable('id')
   def __setattr__(self, *args, **kwargs):
       return object.__setattr__(self, *args, **kwargs)

   def insider(self):
       self.id = "321"

To identify a method as private::

from pythonlangutil.access_modifiers import private_function

class PrivateFunctionTest(object):
   def __init__(self):
       pass

   @private_function
   def private_method(self):
       return 'called from inside my own class'

   def insider(self):
       return self.private_method()

Creating Overloads

To create overloads::

from pythonlangutil.overload import Overload, signature

class OverloadTest():
    def __init__(self):
        self.male_pref = "Mr. %s"
        self.female_pref = "Ms. %s"
        self.general_pref = "Dear %s"

    @Overload
    @signature("str", "bool")
    def my_method(self, name, male):
        if male:
            return self.male_pref % name
        return self.female_pref % name

    @my_method.overload
    @signature("str")
    def my_method(self, name):
        return self.general_pref % name

    @my_method.overload
    @signature("int", "str")
    def my_method(self, times, name):
        return "\n".join([self.general_pref % name for i in range(times)])

Using Singleton Model

It prevents the instantiation of the class. The only instance of the class will be accessible through get_instance() method which will be added to class automatically.

To use singleton::

from pythonlangutil.singleton import Singleton

@Singleton()
class SingletonTest():
    def __init__(self):
        pass
Release History

Release History

This version
History Node

0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pythonlangutil-0.1.zip (7.3 kB) Copy SHA256 Checksum SHA256 Source Apr 26, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting