PHP是世界上最好的语言 🤗

因为PHP是有史以来最好的语言,没有之一。它快速,非常强大,而且免费。

用Json将字典格式化输出

data=json.dumps(字典,indent=4,sort_keys=True) print(data)

March 20, 2022 · 1 min · 编程笔记本

`__new__`的使用

准确来说,__new__才是构造函数 __new__执行在__init__之前 如果__new__不返回一个cls实例,则__init__不会被执行 class A(): def __new__(self,*args,**kwargs): print("new") return object.__new__(self) def __init__(self): print("init") a=A() output: new init 单例模式可以用__new__来实现: https://javabullshit.github.io/posts/singleton/

March 17, 2022 · 1 min · 编程笔记本

python反射

class Website(): def index(self): print("index page") def archive(self): print("archive page") def about(self): print("about page") site = Website() while True: chioose = input("请选择页面:") if hasattr(site, chioose): f = getattr(site, chioose) f() elif chioose == "exit": break else: print("404") output: 请选择页面:about about page 请选择页面:index index page 请选择页面:hjki 404 请选择页面:exit

March 17, 2022 · 1 min · 编程笔记本

python中的多态

python的多态支持非常有限 不知道这是不是对的 class Human(): def eat(self): print("人类进食") class Animal(): def eat(self): print("动物进食") def eat(ojb): ojb.eat() h, a = Human(), Animal() for i in [h, a]: eat(i) output: 人类进食 动物进食

March 17, 2022 · 1 min · 编程笔记本

Python单例模式

class A(): __instance = None # __flag作为私有的静态变量用于防止init多次执行 __flag = False def __new__(cls, *args, **kwargs): print("new") if cls.__instance is None: cls.__instance = super().__new__(cls) return cls.__instance # 如果 __new__() 未返回一个 cls 的实例,则新实例的 __init__() 方法就不会被执行。 def __init__(self): if not A.__flag: print("init只会执行一次") A.__flag = True a = A() b = A() print(a) print(b) output: new init只会执行一次 new <__main__....

March 17, 2022 · 1 min · 编程笔记本