python学习笔记3-模块和类

模块

模块属性和变量的查看:dir()
变量删除:del X
模块reload:import importlib importlib.reload(model)
模块是包含一定功能实现的集合,一般标准库和安装的模块保存在\python\lib或\python\lib\site-packages
引入的模块可以对模块内的变量方法等做修改,但不会影响原模块代码,即重新引入还是和未修改前一样。

#保存为testmodle.py
def test():
     print(1)
__name__='test'
x=1
a=2
__x__=1
__c__='f'
b='d'
import testmodel
#和下面一样
from testmodel import *
print(dir(testmodel))
print(testmodel.x)
del testmodel.x
print(dir(testmodel))#x没有了
import importlib
importlib.reload(testmodel)
print(testmodel.x)
test()

数据结构

4种数据结构:列表,元组,字典,集合
序列的三种形态——列表、元组与字符串,同样拥有一种切片(Slicing)运算符,它能够允许我们序列中的某段切片——也就是序列之中的一部分,如:a[1:5]。

#list
a=['a','b','c']
print(type(a))
#元组
b=('a','b','c')
print(type(b))
#字典
x=10
c={'x':'a','y':5,'z':('a',x)}
print(type(c))
print(c['z'])
#集合,set和dict里面不能有list:
#list 不使用 hash 值进行索引,故其对所存储元素没有可哈希的要求;
# set / dict 使用 hash 值进行索引,也即其要求欲存储的元素有可哈希的要求。
# Python不支持dict的key为list或dict类型,
# 因为list和dict类型是unhashable(不可哈希)的。
d=set(['a','b',('d',5)])
print(type(d))
#set 一般用来验证某某元素
print('a' in d,"and",x in d)

类和继承

类和类的实例,的类比:人和张三李四。所有人一般都有眼耳口鼻,张三李四也有。

class SchoolMember:
'''代表任何学校里的成员。'''
	def __init__(self, name, age):
		self.name = name
		self.age = age
		print('(Initialized SchoolMember: {})'.format(self.name))
	def tell(self):
'''告诉我有关我的细节。'''
		print('Name:"{}" Age:"{}"'.format(self.name, self.age), end=" ")
class Teacher(SchoolMember):
'''代表一位老师。'''
	def __init__(self, name, age, salary):
		SchoolMember.__init__(self, name, age)
		self.salary = salary
		print('(Initialized Teacher: {})'.format(self.name))
	def tell(self):
		SchoolMember.tell(self)
		print('Salary: "{:d}"'.format(self.salary))
class Student(SchoolMember):
'''代表一位学生。'''
	def __init__(self, name, age, marks):
		SchoolMember.__init__(self, name, age)
		self.marks = marks
		print('(Initialized Student: {})'.format(self.name))
	def tell(self):
		SchoolMember.tell(self)
		print('Marks: "{:d}"'.format(self.marks))
t = Teacher('Mrs. Shrividya', 40, 30000)
s = Student('Swaroop', 25, 75)
# 打印一行空白行
print()
members = [t, s]
for member in members:
# 对全体师生工作
member.tell()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值