python3

Head First Python 读书笔记(二)

2018-07-03  本文已影响4人  icessun

第四章 :函数与模块

def icessun():
    # 这也是注释,下面是函数文档注释,描述函数的用途
    """this is function document as docstring"""
    vowels=set('aeiou')
    word = input("provide a word to search for vowels:")
    found=vowels.intersection(set(word))
    for vowel in found:
        print(vowel)
def search4letters(phrase:str,letter:str)->set:
    """return a set of the letter found in phrase."""
    return set(letter).intersection(set(phrase))

参数旁边的表示:希望传入的参数类型;参数列表后面的箭头表示:返回值是一个集合;这样做只是为了方便程序员阅读,程序不会去强制校验。

def search4letters(phrase:str,letter:str='aeiou')->set:
    """return a set of the letter found in phrase."""
    return set(letter).intersection(set(phrase))
def search4letters(phrase:str,letter:str='aeiou')->set:

search4letters(letter='xyz',phrase='galaxy')

函数共享

模块本地导入

在桌面新建一个文件夹mymodules,把要共享的模块functionTest.py放入其中;运行cmd,切换到新建的文件夹下,调用python解释器:py -3(windows下的命令),使用import 模块名字导入模块,使用模块中的函数模块 . 函数。这个新建的文件夹就会被解释器当做我们的当前工作目录。

两个必要的发布描述文件:setup.py and README.txt(命名规则是规定的)

#  setup.py 文件 描述我们的模块,  README.txt  文件要有,但是内容可选
# py_modules=['functionTest'] 表示在这个将要发布的包中所有的 ".py" 文件
from setuptools import setup
setup(    
          name='functionTest',  # 包名
          version='1.0',
          description='the first modules by icessun',
          author='icessun',
          author_email='icessun@qq.com',
          url='headfirstlabs.com',
          py_modules=['functionTest'],
     )
创建发布描述

创建两个必要的文件完毕后,接着到命令行窗口,输入下面的命令必须传递的参数:sdist,注意切换到包含两个必要的文件的文件夹目录下

创建发布消息 ,执行的命令 创建发布消息 ,成功返回的消息 模块中文件的变化

可以安装的文件(包)在dist文件夹(由setuptools创建)里面,里面包含模块的源代码(三个文件的合并:setup.py && README.txt && functionTest.py

产生的包,发布文件 安装发布文件

到此,已经成功的创建了一个发布文件,可以直接把这个发布文件拷给对方,使用pip安装。或者是直接把这个发布文件上传到PyPI,让所有的程序员都可以使用。

以后要是决定更新某个模块的代码,重复上面的三个步骤将更新的模块安装到site-packages,一定记得在setup.py文件中指定一个新的版本号。

上一篇下一篇

猜你喜欢

热点阅读