creating a simple package that can be install via Pip & virtualenv

后端 未结 2 1774
旧时难觅i
旧时难觅i 2020-12-14 03:26

I would like to create the simplest (hello world package) package that I could install using pip in a virtualenv from a local zip file.

In python i would do

相关标签:
2条回答
  • 2020-12-14 03:54

    You have to create account on http://pypi.python.org/. Then you can upload the module on http://pypi.python.org/pypi?%3Aaction=submit_form.

    Doc on this site contains all commands like

    How to create module which can be upload on pipy?

    How to download fro pip?

    etc...

    You will get help on http://docs.python.org/distutils/index.html

    Also you can directly register on http://docs.python.org/distutils/packageindex.html

    0 讨论(0)
  • 2020-12-14 04:11

    You can also try this code that I made:

    def create(name,path_to_code,description,version,username,password,readme='',keywords=[]):
        import os
        from os.path import expanduser
        with open(path_to_code,'r') as file:
            code=file.read()
        os.system('mkdir '+name)
        with open(os.path.join(os.getcwd(),name+"/code.py"),'w') as file:
            file.write(code)
        with open(os.path.join(os.getcwd(),name+"/README.txt"),'w') as file:
            file.write(readme)
        with open(os.path.join(expanduser("~"),".pypirc"),'w') as file:
            file.write("""
    [distutils]
    index-servers=pypi
    
    [pypi]
    repository = https://upload.pypi.org/legacy/
    username = %s
    password = %s
    [server-login]
    username = %s
    password = %s      
            """%(username,password,username,password,))
        with open(os.path.join(os.getcwd(),name+"/setup.py"),'w') as file:
            file.write("""
    from setuptools import setup
    
    setup(
          name='%s',    # This is the name of your PyPI-package.
          keywords='%s',
          version='%s',
          description='%s',
          long_description=open('README.txt').read(),
          scripts=['%s']                  # The name of your scipt, and also the command you'll be using for calling it
    )
            """%(name,' '.join(keywords),version,description,'code.py'))
    
        os.system("cd "+name+";python3 setup.py register sdist upload -r https://upload.pypi.org/legacy/")
    

    Then run it and put the parameters in the create function. This will make the package and upload it pip with the given name and information.

    0 讨论(0)
提交回复
热议问题