模块使用、面向对象介绍

简介:

模块使用

模块是Python组织代码的基本方式。
一个Python脚本可以单独运行,也可以导入到另一个脚本中运行,当脚本被导入运行时,我们将其称为模块(module)。
所有的.py文件都可以作为一个模块导入
模块名与脚本的文件名相同
例如我们编写了一个名为hello.py的脚本,则可以在另一个脚本中用import  hello语句来导入它。

实例:
[root@centos7-3 python]# cat add.py
#!/usr/bin/python
def addNum(x,y):
return x + y
print addNum(10,10)

[root@centos7-3 python]# cat fun.py 
#!/usr/bin/python
import add
print add.addNum(5,4)

执行:
[root@centos7-3 python]# python fun.py 
20
9

执行fun.py后的结果将add.py里的结果(20)打印出来了,现在只想要fun.py执行的结果,操作如下:
添加判断:如果是主函数则执行,add.py就是主函数

模块使用、面向对象介绍

模块使用、面向对象介绍

结果:
模块使用、面向对象介绍

Python的模块可以按目录组织为包
创建一个包的步骤:
    - 创建一个名字为包名的目录
    - 在该目录下创建一个__init__.py文件
    - 根据需要,在该目录下存放脚本文件或已编译的扩展及子包
    - import pack.m1, pack.m2, pack.m3

实例:
1、创建init.py
[root@centos7-3 python]# pwd
/root/python

[root@centos7-3 python]# touch init.py

计算字符数、单词数、行数
[root@centos7-3 fun]# cat word.py 
#!/usr/bin/python
def wordCount(s):
chars=len(s) #计算字符数
words=len(s.split()) #计算单词数
lines=s.count('\n') #计算行数
print chars,words,lines

if name == 'main':
s=open('/etc/passwd').read() 
wordCount(s)

[root@centos7-3 fun]# python word.py 
1188 47 24

传入fun的包
In [3]: from fun import word

In [4]: ls fun/
fun.sh init.py init.pyc word.py word.pyc

In [5]: word.wordCount('asdaaaaaaaaaaaaaa')

面向对象介绍

1、面向过程和面向对象编程

  • 面向过程编程:函数式编程,C程序等
  • 面向对象编程:C++,Java,Python等,若是碰到大的项目,用类表示,对象就是类的实例,类里有很多的方法(函数),如果需要调用,就必须将类实例化
    2、类和对象:是面向对象中的两个重要概念
  • 类:是对事物的抽象,比如:人类、球类
  • 对象:是类的一个实例,比如:足球、篮球
    实例说明:
  • 球类可以对球的特征和行为进行抽象,然后可以实例化一个真实的球实体出来。

面向对象的主要思想是:

  • 封装
  • 继承
  • 多态
    这种思想方便解决较为复杂的项目,且维护起来较为容易。

3、类定义:
类把需要的变量和函数组合成一起,这种包含称为“封装”
class A(object):
类的结构:
class 类名:
成员变量 – 属性
成员函数 – 方法

实例:

class People(object):  #定义一个类
    coler='yellow'
    def fun(self):     #定义类的方法(函数)
        self.coler='black' #定义一个变量(属性)
        print 'I am a %s' %(self.coler)

pe=People()                 #对类实例化,才能调用类
print pe.coler              #打印出类的属性
pe.fun()                     #打印出类的方法

结果:

yellow
I am a black









本文转自 iekegz 51CTO博客,原文链接:http://blog.51cto.com/jacksoner/2059219,如需转载请自行联系原作者
目录
相关文章
|
1月前
|
C语言 开发者
模块化程序设计
模块化程序设计
15 0
|
7月前
|
Python
探索Python中的函数和类:构建模块化和面向对象的程序
探索Python中的函数和类:构建模块化和面向对象的程序
探索Python中的函数和类:构建模块化和面向对象的程序
|
4月前
|
Python
Python 面向对象编程:什么是面向对象编程(OOP)?解释封装、继承和多态的概念。
Python 面向对象编程:什么是面向对象编程(OOP)?解释封装、继承和多态的概念。
40 0
|
7月前
|
数据安全/隐私保护 开发者 Python
面向对象编程(OOP):Python中的抽象与封装
面向对象编程(OOP):Python中的抽象与封装
|
9月前
面向对象基础-抽象
面向对象基础-抽象
36 0
|
11月前
|
Python
Python面向对象的开发之封装,多继承,多态
Python面向对象的开发之封装,多继承,多态
面向对象程序设计第六章:继承
面向对象程序设计第六章:继承
84 0
面向对象程序设计第七章:继承与派生
面向对象程序设计第七章:继承与派生
98 0
面向对象程序设计第七章:继承与派生
|
网络协议 安全 Java
面向对象编程-封装介绍 | 学习笔记
快速学习面向对象编程-封装介绍
76 0
|
开发者 Python
面向对象的服务器封装 | 学习笔记
快速学习 面向对象的服务器封装
86 0