python
尘埃落定123
机器人,机器视觉,Linux, Python, OpenCV,C++
展开
-
python常用的类间关系
1. 类之间的关系1.1. 定义1.2. 例子2. 定义可访问性2.1. 定义2.2. 例子附录1. 类之间的关系1.1. 定义简单的说,类和类之间的关系有三种:is-a、has-a和use-a关系.is-a关系也叫继承或泛化,比如学生和人的关系、手机和电子产品的关系都是属于继续关系.has-a关系通常称之为关联,比如部门和员工的关系,汽车和引擎的关系都...原创 2020-03-30 20:57:55 · 1030 阅读 · 0 评论 -
python3 原地动态输出
原地动态输出import sysimport timeif __name__ == "__main__": for i in range(101): # 方法1 sys.stdout.write('\r' + str(i)) sys.stdout.flush() # 方法2 # print('\r' ...转载 2020-01-07 15:12:31 · 2038 阅读 · 0 评论 -
__str__ ,__len__python3
"""__str____len__版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7"""class Fib(object): def __init__(self, num): self.num = num self.fibo = [0, 1] i = 2 w...转载 2019-04-08 12:56:58 · 464 阅读 · 0 评论 -
重写, 多态-pyhton3
"""重写, 多态版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7""""""子类在继承了父类的方法后,可以对父类已有的方法给出新的实现版本,这个动作称之为方法重写(override).通过方法重写我们可以让父类的同一个行为在子类中拥有不同的实现版本,当我们调用这个经过子类重写的方法时,不同的子类对象会表现出不同的行为,这...转载 2019-04-08 12:55:31 · 186 阅读 · 0 评论 -
继承-python3
"""继承版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7""""""刚才我们提到了,可以在已有类的基础上创建新类,这其中的一种做法就是让一个类从另一个类那里将属性和方法直接继承下来,从而减少重复代码的编写.提供继承信息的我们称之为父类,也叫超类或基类;得到继承信息的我们称之为子类,也叫派生类或衍生类.子类除了继承父类提供...转载 2019-04-08 11:35:47 · 180 阅读 · 0 评论 -
类之间的关系
类之间的关系版本: v1.0日期: 2019.03.26作者: Catherine简单的说,类和类之间的关系有三种:is-a、has-a和use-a关系.is-a关系也叫继承或泛化,比如学生和人的关系、手机和电子产品的关系都是属于继续关系.has-a关系通常称之为关联,比如部门和员工的关系,汽车和引擎的关系都属于关联关系;关联关系如果是整体和部分的关系,那么我们称之为聚合关系;如...转载 2019-04-08 11:27:04 · 269 阅读 · 0 评论 -
类方法
"""类方法版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7""""""和静态方法比较类似,Python还可以在类中定义类方法,类方法的第一个参数约定名为cls,它代表的是当前类相关的信息的对象(类本身也是一个对象,有的地方也称之为类的元数据对象),通过这个参数我们可以获取和类相关的信息并且可以创建出类的对象,代码如下所示...转载 2019-03-28 10:44:14 · 1827 阅读 · 0 评论 -
静态方法
"""静态方法版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7""""""之前,我们在类中定义的方法都是对象方法,也就是说这些方法都是发送给对象的消息.实际上,我们写在类中的方法并不需要都是对象方法,例如我们定义一个“三角形”类,通过传入三条边长来构造三角形,并提供计算周长和面积的方法,但是传入的三条边长未必能构造出三角形对...转载 2019-03-28 10:43:29 · 393 阅读 · 0 评论 -
__slots__魔法
"""__slots__魔法版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7""""""我们讲到这里,不知道大家是否已经意识到,Python是一门动态语言.通常,动态语言允许我们在程序运行时给对象绑定新的属性或方法,当然也可以对已经绑定的属性和方法进行解绑定.但是如果我们需要限定自定义类型的对象只能绑定某些属性,可以通...转载 2019-03-28 10:42:46 · 473 阅读 · 0 评论 -
@property装饰器
"""@property装饰器版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7""""""之前我们讨论过Python中属性和方法访问权限的问题,虽然我们不建议将属性设置为私有的,但是如果直接将属性暴露给外界也是有问题的,比如我们没有办法检查赋给属性的值是否有效.我们之前的建议是将属性命名以单下划线开头,通过这种方式来暗示...转载 2019-03-28 10:42:02 · 1499 阅读 · 0 评论 -
python3-字典
"""字典版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7"""scores = {'Catherine': 95, 'Mike': 78, 'Joey': 82}# 通过键可以获取字典中对应的值print(scores['Catherine'])print(scores['Joey'])# 对字典进行遍历(遍历的其实是...转载 2019-03-28 10:40:21 · 442 阅读 · 0 评论 -
列表4-python3
"""列表版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7"""list1 = [1, 3, 5, 7, 100]print(list1)list2 = ['hello'] * 5print(list2)# 计算列表长度(元素个数)print(len(list1))# 下标(索引)运算print(list1[0])...转载 2019-03-28 10:32:24 · 233 阅读 · 0 评论 -
python3 字符串
"""字符串版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7"""str1 = 'hello, world!'# 通过len函数计算字符串的长度print(len(str1)) # 13# 获得字符串首字母大写的拷贝print(str1.capitalize()) # Hello, world!# 获得字符串变...转载 2019-03-28 10:29:17 · 548 阅读 · 0 评论 -
python3 作用域问题
"""作用域问题版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7"""# 局部作用域def foo1(): a = 5foo1()# print(a) # NameError: name 'a' is not defined# 全局作用域b = 10def foo2(): print(b)...转载 2019-03-28 10:27:29 · 268 阅读 · 0 评论 -
python3 函数的参数
"""函数的参数 -默认参数 -可变参数 -关键字参数 -命名关键字参数版本: v1.0日期: 2019.03.26作者: Catherinepython版本: 3.7"""# 参数默认值def f1(a, b=5, c=10): return a + b * 2 + c * 3print(f1(1...转载 2019-03-28 10:26:25 · 295 阅读 · 0 评论 -
删除器-python3
"""删除器版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7"""class Car(object): def __init__(self, brand): self._brand = brand @property def brand(self): return self...转载 2019-04-08 12:58:09 · 489 阅读 · 0 评论 -
使用已有的方法定义访问器/修改器-python3
"""使用已有的方法定义访问器/修改器版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7"""class Car(object): def __init__(self, brand): self.set_brand(brand) def get_brand(self): return...转载 2019-04-08 12:59:34 · 918 阅读 · 0 评论 -
对象之间的依赖关系和运算符重载-python3
"""对象之间的依赖关系和运算符重载版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7"""class Car(object): def __init__(self, brand, max_speed): self._brand = brand self._max_speed = max_sp...转载 2019-04-08 13:00:38 · 272 阅读 · 0 评论 -
写入CSV文件-python3
"""写入CSV文件版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""import csvclass Teacher(object): def __init__(self, name, age, title): self._name = name self._age = age ...转载 2019-04-09 09:08:08 · 1576 阅读 · 0 评论 -
读取CSV文件
"""读取CSV文件版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""import csvfilename = 'teacher.csv'try: with open(filename) as f: reader = csv.reader(f) data = list(reade...转载 2019-04-09 09:07:09 · 768 阅读 · 0 评论 -
使用Python中的json模块就可以将字典或列表以JSON格式保存到文件中-python3
"""使用Python中的json模块就可以将字典或列表以JSON格式保存到文件中版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""import jsondef main(): mydict = { 'name': 'Catherine', 'age': 30, '...转载 2019-04-09 09:06:27 · 4449 阅读 · 0 评论 -
`JSON`数据类型和`Python`数据类型的对应关系
JSON数据类型和Python数据类型的对应关系JSONPythonobjectdictarrayliststringstrnumber(int/real)int/floattrue/falseTrue/FalsenullNonePythonJSONdictobjectlist,tuplearray...转载 2019-04-09 09:05:17 · 1834 阅读 · 0 评论 -
二进制文件的读写-python3
"""二进制文件的读写版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""def main(): try: with open('mm.jpg', 'rb') as fs1: data = fs1.read() print(type(data)) ...转载 2019-04-09 09:04:12 · 5085 阅读 · 0 评论 -
写入文件-python3
"""要将文本信息写入文件文件也非常简单,在使用open函数时指定好文件名并将文件模式设置为'w'即可.注意如果需要对文件内容进行追加式写入,应该将模式设置为'a'.如果要写入的文件不存在会自动创建文件而不是引发异常.下面的例子演示了如何将19999直接的素数分别写入三个文件中(199之间的素数保存在a.txt中,100999之间的素数保存在b.txt中,10009999之间的素数保存...转载 2019-04-09 09:03:10 · 1376 阅读 · 0 评论 -
读取文件: read, for in, readlines-python3
"""读取文件:read, for in, readlines版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""import timedef main(): # 一次性读取整个文件内容 with open('致橡树.txt', 'r', encoding='utf-8') as f: p...转载 2019-04-09 08:59:25 · 1772 阅读 · 0 评论 -
with open, 读文本文件 防止程序因异常崩溃-pyhton3
"""with open, 读文本文件防止程序因异常崩溃版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""def main(): try: with open('致橡树.txt', 'r', encoding='utf-8') as f: print(f.read()) ...转载 2019-04-09 08:58:14 · 1478 阅读 · 0 评论 -
open, 读文本文件 防止程序因异常崩溃-python3
"""open, 读文本文件防止程序因异常崩溃版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""def main(): f = None try: f = open('致橡树.txt', 'r', encoding='utf-8') print(f.read()) ex...转载 2019-04-09 08:57:04 · 692 阅读 · 0 评论 -
open, 读文本文件-python3
"""open, 读文本文件版本: v1.0日期: 2019.03.28作者: Catherinepython版本: 3.7"""def main(): f = open('致橡树.txt', 'r', encoding='utf-8') print(f.read()) f.close()if __name__ == '__main__': ...转载 2019-04-09 08:55:49 · 439 阅读 · 0 评论 -
多重继承2-python3
"""多重继承2版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7"""class Father(object): def __init__(self, name): self._name = name def gamble(self): print('%s在打麻将.' % self...转载 2019-04-08 13:02:47 · 173 阅读 · 0 评论 -
多重继承-python3
"""多重继承1版本: v1.0日期: 2019.03.27作者: Catherinepython版本: 3.7"""class A(object): def foo(self): print('foo of A')class B(A): passclass C(A): def foo(self): print...转载 2019-04-08 13:01:47 · 322 阅读 · 0 评论 -
python3 print用法
"""print用法版本: v1.0日期: 2019.03.25作者: Catherinepython版本: 3.7"""print("用法1: ", end='')print('hello, world!')print()print("用法2: ", end='')print("你好,世界!")print()print("用法3: ", end='')print('...转载 2019-03-28 10:24:20 · 8577 阅读 · 0 评论 -
python发送信息给文件传输助手
"""发送消息"Hello World!"给文件传输助手"""import itchatitchat.login()itchat.send("Hello World!", "filehelper")原创 2019-03-25 17:54:39 · 1044 阅读 · 0 评论 -
python语音播报
"""python3: pip install pyttsx3python2: pip install pyttsx文本转语音"""import pyttsx3import timestr = "Come on, Catherine"engine = pyttsx3.init()num = 0while num < 3: engine.say(str) ...原创 2019-03-25 17:28:18 · 6097 阅读 · 1 评论 -
素数-python3
"""输出2~99之间的素数Version: 1.0.0Author: CatherineData: 2019-03-11"""import mathfor num in range(2, 100): is_prime = True for i in range(2, int(math.sqrt(num)) + 1): if num % i == ...转载 2019-03-11 13:10:26 · 755 阅读 · 0 评论 -
完美数-pyhton
"""找出1~9999之间的所有完美数完美数是除自身外其他所有因子的和正好等于这个数本身的数例如: 6 = 1 + 2 + 3, 28 = 1 + 2 + 4 + 7 + 14Version: 1.0.0Author: CatherineData: 2019-03-11"""import mathfor num in range(1, 10000): sum = 0...转载 2019-03-11 13:09:40 · 791 阅读 · 2 评论 -
回文数-python3
"""判断输入的正整数是不是回文数回文数是指将一个正整数从左往右排列和从右往左排列值一样的数例如: 121, 123454321Version: 1.0.0Author: CatherineData: 2019-03-11"""num = int(input("请输入一个正整数: "))temp = numnum2 = 0while temp > 0: ...转载 2019-03-11 13:08:50 · 993 阅读 · 0 评论 -
水仙花数-python3
"""找出100~999之间的所有水仙花数水仙花数是各位立方和等于这个数本身的数如:153 = 1**3 + 5**3 + 3**3Version: 1.0.0Author: CatherineData: 2019-03-11"""for num in range(100, 1000): low = num % 10 mid = num // 10 % 10 ...转载 2019-03-11 13:08:01 · 797 阅读 · 0 评论 -
猜数字游戏-python3
"""猜数字游戏计算机出一个1~100之间的随机数由人来猜计算机根据人猜的数字分别给出提示大一点/小一点/猜对了Version: 1.0.0Author: CatherineData: 2019-03-11"""import randomanswer = random.randint(1, 100)count = 0while True: count += 1...转载 2019-03-11 13:07:12 · 1955 阅读 · 0 评论 -
斐波那契数列-python3
"""输出斐波那契数列的前20个数1 1 2 3 5 8 13 21 ...Version: 1.0.0Author: CatherineData: 2019-03-11"""a = 0b = 1for _ in range(20): (a, b) = (b, a + b) print(a, end=' ')...转载 2019-03-11 13:06:28 · 635 阅读 · 0 评论 -
Craps赌博游戏-python3
"""玩家掷两个骰子,每个骰子点数为1-6,如果第一次点数和为7或11,则玩家胜;如果点数和为2、3或12,则玩家输庄家胜。若和为其他点数,则记录第一次的点数和,玩家继续掷骰子,直至点数和等于第一次掷出的点数和则玩家胜;若掷出的点数和为7则庄家胜。Version: 1.0.0Author: CatherineData: 2019-03-11"""import randomx...原创 2019-03-11 13:04:30 · 1030 阅读 · 1 评论