kongtianyi-pythonday04
2021/8/1 20:35:51
本文主要是介绍kongtianyi-pythonday04,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
复杂类型的排序
ls = [{"name":"张三", "age":19}, {"name":"李四", "age":12}, {"name":"王五", "age":18}] def sort_by_age(item): return item["age"] # ls = sorted(ls, key=sort_by_age, reverse=True) ls = sorted(ls, key=lambda x:x['age'], reverse=True) print(ls) ## counts = {"when":400, "you": 20, "alone":100, "me":30} counts=sorted(counts.items(),key=lambda x:x[1]) print(counts)
字符串方法
# 字符串 name = " Python c++ Java " print(name) print(type(name)) # <class 'str'> # 是str类型就会有string类所具有的方法 # 1.strip 去两端空格 print(len(name)) name = name.strip() print(len(name)) print(name) # 2.split 分割 默认按照空格分割 li1 = name.split() li2 = name.split('+') print(li1) print(li2) # 3.replace 替换 price = '$9.9$' price = price.replace("$", "") print(float(price)) # 4. join 列表变成字符串 print("".join(['Python', 'c++', 'Java'])) print(" ".join(['Python', 'c++', 'Java'])) print("/".join(['Python', 'c++', 'Java'])) print("_".join(['Python', 'c++', 'Java'])) print("_".join([str(i) for i in range(10)]))
类的定义
只有方法的类
# 类是对象的模板, 对象是类的具体实例 class Frog(): ## 行为, 就是方法 就是我们 之前学的函数, 只不过要加self def jump(self): print("愉快的跳跃中") def eat(self): print("愉快的吃着美食") # 使用类 # 根据类来创建对象被称为实例化。 # 对象名 = 类名() f1 = Frog() # f1对象调用 eat()方法, 通过.的形式 f1.eat() f1.jump()
# 类是对象的模板, 对象是类的具体实例 class Frog(): def __init__(self): self.name = None self.color = None self.age = 0 ## 行为, 就是方法 就是我们 之前学的函数, 只不过要加self def jump(self): print(f"{self.name}在愉快的跳跃中") def eat(self): print("愉快的吃着美食") # 使用类 # 根据类来创建对象被称为实例化。 # 对象名 = 类名() f1 = Frog() f1.name = "小顽皮" # f1对象调用 eat()方法, 通过.的形式 f1.eat() f1.jump()
self
class Frog(): def __init__(self): self.name = None self.color = None self.age = 0 def jump(self): print(f"{self.name}在愉快的跳跃中, self的地址{id(self)}") def eat(self): print("愉快的吃着美食") f1 = Frog() print(id(f1)) f1.name = "小顽皮" f1.jump() f2 = Frog() print(id(f2)) f2.name = "大顽皮" f2.jump()
构造函数
class Frog(): def __init__(self, name, color, age=0): # 构造方法, 当类被实例化时会自动调用 # 作用:初始化成员属性 print("__init__") self.name = name self.color = color self.age = age def jump(self): print(f"{self.name}在愉快的跳跃中,颜色是{self.color} 年龄{self.age}") def eat(self): print("愉快的吃着美食") f1 = Frog("小顽皮", "绿色") f2 = Frog("大顽皮", "绿色", 3) f1.jump() f2.jump()
面向对象三大特性
封装/继承/多态
继承
子类继承父类所有属性和方法
class Person(): def __init__(self,name, age=0): self.name=name ## 私有属性 self.__age = age def getAge(self): return self.__age def setAge(self, age): self.__age = age def eat(self): print(f'{self.name}在吃饭') def __show(self): print("show()") class Student(Person): def __init__(self,name,mark=0): super().__init__(name) # Person.__init__(self,name) # fu self.mark=mark def eat(self): """重写""" print(f'重新实现eat()') def study(self): print(f'{self.name}在学习,拿了{self.mark}分') class Teacher(Person): def __init__(self,name,sal=0): super().__init__(name) self.salary=sal def teach(self): print(f'{self.name}在教课,工资{self.salary}') s1 = Student("张珊", 100) # print(s1.__age) # s1.__show() s1.study() s1.eat()
封装
class Person(): def __init__(self,name, age=0): self.name=name ## 私有属性 self.__age = age def getAge(self): return self.__age def setAge(self, age): self.__age = age def eat(self): print(f'{self.name}在吃饭') def __show(self): print("show()") class Student(Person): def __init__(self,name,mark=0): super().__init__(name) # Person.__init__(self,name) # fu self.mark=mark def eat(self): """重写""" print(f'重新实现eat()') def study(self): print(f'{self.name}在学习,拿了{self.mark}分') class Teacher(Person): def __init__(self,name,sal=0): super().__init__(name) self.salary=sal def teach(self): print(f'{self.name}在教课,工资{self.salary}') s1 = Student("张珊", 100) # print(s1.__age) # s1.__show() s1.study() s1.eat()
这篇关于kongtianyi-pythonday04的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器