Python入门-函数的使用到Python的公布安装

本文主要适合有一定编程经验,至少掌握一门编程语言的人查看。

文中样例大多都是简单到认识英文单词就能看懂的水平,主要讲的是Python的总体使用方法和结构。不会设计高深层次,对Python入门有一定帮助。

Python和Java对照。会看到Python设计思想在于简洁、有用、强大,每个程序猿都值得学习和掌握。

Python函数的定义及有用

Python中的函数是一个命名的代码块。和Java一样,能够带0个或多个參数。主要形式如

def $函数名($參数):
...
函数体
...

能够看出Python通过缩进语句取代了java中的{},将代码归组到一起。

如Python中的基本语句:

for item in list:
...
do something
... while true:
...
do something
... if true:
...
else:
...

写一个通过參数的类型来打印不同的结果样例:

###假设是一个列表类型,则循环打印,否则打印当前
def print_test(is_list):
if isinstance(is_list, list):
for t in is_list:
print(t)
print_test("not list")
else:
print(the_list)

Python中的列表能够理解卫java中的列表,元组看成java中的数组(用小括号扩住),貌似比数据更强大和简洁一点。我们能够理解为“打了鸡血”的数据,能够随便伸缩。相关方法有:

len(list)

list.insert(1,‘’)

list.remove(”)

list.append(”)

上述实例中,用到递归调用。更具传入參数类型类递归调用自己。

能够看到。方法名字前就加了def修饰,參数也是直接随便写。

Python设计哲学把不论什么事物都看成了对象或集合。类型并不关心内部究竟是什么类型。变量标识符根本不须要类型。java中则声明变量时必须要表明类型。能够把Python看成高层集合,对于列表来说,里面能够存储不同类型的数值,仅仅要你给出一个名字。其它的由Python搞定

样例中isinstance 函数为Python内置函数。和java中的 instanceof 相似。

函数的调用。保存method.py, F5执行后,直接在shell和idle中键入:

### 句未加‘。’ 和写多行句子
import method.py
print_test(["item1","item2","item3"])

Python程序的公布和安装

模块化Python代码,像java一样,能够构建复杂而强大的系统。把Python代码模块化为类库,方便管理,业方便兴许的代码重用和架构。

import sys; sys.path 产看python在计算机上存储位置。

把上例函数封装为一个模块,然后公布安装为例:

  • 为刚写的方法文件建立一个目录:method

    把method.py 放到里面
  • 新建立一个文件 “setup.py”

    文件里为公布的元数据,编辑例如以下:
# 元数据
from distutils.core import setup setup(
name = 'CankingApp',
version = '1.0',
py_modules = ['method'],
author = 'CankingApp',
author_email = 'king@gmail.com',
url = 'www.baidu.com',
descripthin= 'test',
)
  • 构建公布文件

    打开终端键入命令:

    $python3 setup.py sdist

    running sdist

    running check

    warning: check: missing required meta-data: url

    warning: sdist: manifest template ‘MANIFEST.in’ does not exist (using default file list)

    warning: sdist: standard file not found: should have one of README, README.txt

    writing manifest file ‘MANIFEST’

    creating CankingApp-1.0

    making hard links in CankingApp-1.0…

    hard linking hello.py -> CankingApp-1.0

    hard linking setup.py -> CankingApp-1.0

    Creating tar archive

    removing ‘CankingApp-1.0’ (and everything under it)

  • 按装到Python本地副本中

    终端中命令:

    $ sudo setup.py install

    /usr/lib/python3.4/distutils/dist.py:260: UserWarning: Unknown distribution option: ‘descripthin’

    warnings.warn(msg)

    running install

    running build

    running build_py

    creating build

    creating build/lib

    copying method.py -> build/lib

    running install_lib

    copying build/lib/method.py -> /usr/local/lib/python3.4/dist-packages

    byte-compiling /usr/local/lib/python3.4/dist-packages/method.py to method.cpython-34.pyc

    running install_egg_info

操作完后会看到目录中多了builddist目录及MANIFEST文件。

  • 构建成功,測试代码

直接在idle中測试:

import method
method.print_test(["item1","item2","item3"])

測试函数调用须要加上method,是python中命名空间规定。

Python中的全部代码都与一个命名空间关联,主程序中的代码与”main“命名空间关联。我们单独的代码模块自然自己主动创建一个与代码块同名的命名空间。

所以须要带上method.print_test。

from method import print_test

print_test()

//也能够这样用,可是假设此命名空间有同名时会冲突失效,个人觉得还是第一种比較好。

成功打印出item则标识成功安装。

文中实例源码已上传GitHub, 有兴趣的同学欢迎一起交流学习。


Python入门-函数的使用到程序的公布安装的更多相关文章

  1. Python入门-函数进阶

    昨天我们简单的了解了函数的定义,调用,以及传参,其实还有一个更重要的传参:动态传参,让我们继续昨天没有说完的,以及今天我要分享的东西. 一.动态传参 之前我们说过了传参,如果我们需要给一个函数传参,而 ...

  2. Python入门 - 函数方法

    本节主讲python函数的基本用法,主要包括传递参数.匿名函数和变量作用域. 一.传递参数 python除了传递必需参数外,还可以传递默认参数,不定长参数和关键字参数. 1. 传递必需参数 def m ...

  3. Python入门-函数

    定义:将一组语句的集合通过一个名字(函数名)封装起来,要先执行这个函数,只需要调用其函数名即可.特性:1.减少重复代码2.使程序变的可扩展3.使程序变的易维护 函数参数:形参和实参形参:位置参数,关键 ...

  4. PYTHON定义函数制作简单登录程序(详细)

    环境:python3.* 结构:   dict_name = {} #定义一个字典,后面用到 def newuser(): #定义注册函数 prompt1='login desired:' while ...

  5. python入门-函数(二)

    1 函数传递参数 def greet_users(names): """向列表中的每个用户都发处问候""" for name in name ...

  6. python入门-函数(一)

    1定义函数并且调用  注释语句""" """ def greet_user(): """显示简单的问候语&qu ...

  7. python入门(7)Python程序的风格

    python入门(7)Python程序的风格 Python采用缩进方式,写出来的代码就像下面的样子: # print absolute value of an integer: a = 100 if ...

  8. python入门学习:7.函数

    python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def ...

  9. Python入门篇-函数、参数及参数解构

    Python入门篇-函数.参数及参数解构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.函数概述 1>.函数的作用即分类 函数 数学定义:y=f(x) ,y是x的函数,x ...

随机推荐

  1. J2SE知识点摘记(六)

    1.        static关键字的使用 static 关键字:可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类. static 修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯 ...

  2. Delphi 把一个ICO转换为BMP

    // 方法1 var Icon : TIcon; Bitmap : TBitmap; begin Icon := TIcon.Create; Bitmap := TBitmap.Create; Ico ...

  3. 8 个优秀的 Linux 图形图像及色彩工具

    8 个优秀的 Linux 图形图像及色彩工具 1. 硬件色彩分析器LPROF LPROF 是一个用于创建设备兼容,如相机.扫描仪.显示器的ICC兼容型材的颜色分析器.这些配置提供跨设备的色彩一致性.他 ...

  4. sqlserver 编辑、修改字段说明(备注) sp_addextendedproperty

    语法   sp_addextendedproperty [ @name = ] { 'property_name' } [ , [ @value = ] { 'value' } [ , [ @leve ...

  5. Unity大中华区主办 第二届Unity 游戏及应用大赛 实力派精品手游盘点

    Unity是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎.包含如今时 ...

  6. 解析word中的表格

    由于word表格的特殊性,其本身中的数据本来就不够完善,不能够很好的知道其具体的合并.跨行的相关属性,表格的单位可能是PT或者是百分比,并且是共存的,为处理带来了一定的负担,本代码实现了一个将Word ...

  7. 如何启用Oracle EBS Form监控【Z】

    前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...

  8. kafka 使用、介绍

    kafka  是一个消息系统, 具体资料可以参考官网: BrokerKafka集群包含一个或多个服务器,这种服务器被称为broker Topic每条发布到Kafka集群的消息都有一个类别,这个类别被称 ...

  9. Python核心编程读笔 13:执行环境

    第14章  执行环境 一.可调用对象 python有四种可调用对象:函数.方法.类.一些类的实例 1 函数 (1)内建函数(BIF) BIF是用c/c++写的,编译后放入python解释器,然后把它们 ...

  10. puts fputs printf的区别

    puts()显示字符串时自动在其后添加一个换行符,函数里的参数是一个地址,从该地址向后面输出,直到遇到空字符,所以要确保输出的字符串里要有空字符.与gets()函数一起使用. fputs()需要第二个 ...