【Python】导入类
导入单个类
随着不断添加类,可能会使文件变得很长,那么此时,需要将类存储在模块中,然后在主程序导入类即可
book.py
class Book():
'''模拟一本书'''
def __init__(self,name,page,year):
self.name = name
self.page = page
self.year = year
def get_describe_book(self):
'''返回书读的描述信息'''
long_name = str(self.year)+' page '+str(self.page)+' '+self.name
return long_name
my_book.py
from book import Book
my_book = Book('Pride and Prejudice',352,1796)
print(my_book.get_describe_book())
上面的代码中,from book import Book即为从book模块导入类Book
在一个模块中存储多个类
虽然同一个模块中的类之间应存在某种相关性,但是可以根据需要在一个模块中存储任意数量的类
class Woman():
'''描述一个女人'''
def __init__(self,name,age):
self.name = name
self.age = age
def describe(self):
return ("My name is " + self.name + " and I'm "+str(self.age)+"years old" )
class Man():
'''描述一个男人'''
def __init__(self,name,age):
self.name = name
self.age = age
def describe(self):
return ("My name is " + self.name + " and I'm "+str(self.age)+"years old" )
从一个模块中导入多个类
导入上述文件中Woman与Man类
from people import Man,Woman
Alice = Woman('Alice',32)
print(Alice.describe())
Alice = Man('zhangsan',23)
print(Alice.describe())
导入整个模块
上面导入类非常的麻烦,你得知道这个模块中类的名字才可以导入,为了便捷,我们可以直接导入整个类
import people
Alice = people.Woman('Alice',32)
print(Alice.describe())
Alice = people.Man('zhangsan',23)
print(Alice.describe())
同时也可以使用:from people import *(不推荐使用)
如果A模块依赖B模块,B模块依赖C模块,那么可以先将C导入到B模块,然后再导入到A模块
【Python】导入类的更多相关文章
- Python中导入类
python导入类与导入函数,模块基本一样,一个模块fun,其中包含三个类 class Dog(): def __init__(self,name): self.name=name def bark( ...
- python 类 --导入类
导入类 1.1.导入单个类 如何导入单个类 以上一节为例,编写一个car.py程序 编写一个新程序my_car.py 希望在my.car.py文件中直接使用car.py中的函数,使用from car ...
- Python基础-类
Python基础-类 @(Python)[python, python基础] 写在前面 如非特别说明,下文均基于Python3 摘要 本文重点讲述如何创建和使用Python类,绑定方法与非绑定方法的区 ...
- Python的类的下划线命名的区别
首先,单下划线开头,这个常被用于模块中,在一个模块中以单下划线开头的变量和函数被默认当做内部函数,如果使用from module import *导入时,这部分变量和函数不会被导入.注意,如果使 ...
- python入门-类(二)
1 关于类的导入 可以把类封装到1个文件中 1个文件中也可以封装多个类 在导入的时候可以导入单个,也可以导入多个类,也可以全部导入类 car.py """一个可以用于表示 ...
- Python菜鸟之路:Python基础-类(1)——概念
什么是类? 在python中,把具有相同属性和方法的对象归为一个类(class).类是对象的模板或蓝图,类是对象的抽象化,对象是类的实例化.类不代表具体的事物,而对象表示具体的事物. 类的创建 cla ...
- python:类5——Python 的类的下划线命名有什么不同?
首先是单下划线开头,这个被常用于模块中,在一个模块中以单下划线开头的变量和函数被默认当作内部函数,如果使用 from a_module import * 导入时,这部分变量和函数不会被导入.不过值得注 ...
- Python导入模块的几种方法
Python 模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代 ...
- Python笔记——类定义
Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...
随机推荐
- Newton 插值法
定义 $f(x)$ 关于 $x_0, x_1, \dots, x_k$ 的 $k$ 阶均差(差商)记做 $ f [x_0, x_1, \dots, x_k] $,均差是递归定义的,有两种等价定义 \b ...
- 关于可图化序列的一点结论 NEU 1429
Graphic Sequence A graphic sequence is a sequence of numbers which can be the degree sequence of som ...
- 【CCF】除法 树状数组
[AC] #include<iostream> #include<math.h> #include<cstring> using namespace std; ty ...
- POJ2771 Guardian of Decency
Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 5513 Accepted: 2319 Description Frank ...
- LOJ#2083. 「NOI2016」优秀的拆分
$n \leq 30000$的字符串,问其所有子串的所有AABB形式的拆分有多少种.$t \leq 10$组询问. $n^3$过80,$n^2$过95,鬼去写正解.. $n^2$:先枚举一次算每个位置 ...
- H5 <audio> 音频标签自定义样式修改以及添加播放控制事件
H5 <audio> 音频标签自定义样式修改以及添加播放控制事件 Dandelion_drq 关注 2017.08.28 14:48* 字数 331 阅读 2902评论 3喜欢 3 说明: ...
- Servlet乱码解决
后端收前端 1.post乱码 可以通过 request.setCharacterEncoding("utf-8"); 这样在后端可以接收中文 2.get乱码(手动解决) 可以通过 ...
- poj 3623 Best Cow Line, Gold 后缀数组 + 贪心
题目链接 题目描述 对于一个给定的字符串,可以从左右两端取字符,依次排列构成一个新的字符串. 求可能构成的字符串中字典序 最小的一个. 例:ACDBCB -> ABCBCD 思路 参考自 xue ...
- mac 重置mysql root密码
1. 关闭mysql服务 sudo /usr/local/mysql/support-files/mysql.server stop 如果出现Starting mysqld daemon with d ...
- Ubuntu14.04 LTS安装docker
有以下几种方式: 1. 通过系统自带包安装(可能不是最新版) $ sudo apt-get update $ sudo apt-get install -y docker.io $ sudo ln - ...