V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  wwqgtxx  ›  全部回复第 71 页 / 共 193 页
回复总数  3842
1 ... 67  68  69  70  71  72  73  74  75  76 ... 193  
2017-07-28 15:40:53 +08:00
回复了 xiaoheijw 创建的主题 NGINX nginx 启动报错 ,使用 systemctl start nginx 启动报错
journalctl -u nginx 看看
实测 pyqt5 的 webengine 默认支持 javascript
2017-07-28 10:01:02 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
@saximi 我给你找了一下 type.__call__的具体实现,你可以自己看看
https://github.com/python/cpython/blob/master/Objects/typeobject.c#L921
2017-07-28 06:36:32 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
@saximi 这个地方你不需要明白,只要记住就行了,所有__xx__的方法都是用来给解析器或者系统库隐式调用的,至于具体为什么,你需要去看 cpython 的源代码,我记得这一部分是用 c 写的。就好比 c++初始化一个类就会调用构造方法一样,这个是编译器行为,过度探究原因并没有什么意义
2017-07-27 21:44:08 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
你要注意看就会发现__call__方法是一个绑定方法,即他需要一个 self 参数,也就是说他必须在一个对象实例上调用,而 python 不可能每次在实例化 Class_1 的时候都实例化一个新的 MyType,这样又耗费性能和内存,又完全没有意义,所以他是在你类定义的时候就初始化了一个 MyType 的实例,然后每次实例化 Class_1 的时候都调用这个 MyType 的实例的__call__方法
最后,实际上你初始化一个 Class_1 实例的调用栈是这样的

Class_1() -> 定义类的时候保存的 MyType 的实例.__call() -> type.__call__ -> Class_1.__new__ -> object.__new__ -> Class_1.__init__

然后反向出栈
2017-07-27 21:37:07 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
你要明白 python 是解析式语言,所以语句是顺序执行的,当你定义 Class_1 并指定 MyType 作为它的 metaclass 的时候就隐含的初始化了一个 MyType 的实例
而你的 main 是放在最后的,所以当然是后输出___test1___
2017-07-27 21:33:24 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
@saximi 你上面那个情况先出来 call 两个 MyType 的情况是因为你指定了 MyType 作为 Class_1 的 metaclass,所以 python 先实例化了一个 MyType 给 Class_1 备用
2017-07-27 21:30:21 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
@saximi 因为 type.__call__.调用了 Class_1.__new__呀…
2017-07-26 22:40:44 +08:00
回复了 saximi 创建的主题 Python 请问怎么理解例子中类实例化的输出?
首先,类只有在实例化(即 类名(args))的时候才会先调用__new__再调用__init__
第二,metaclass 就是负责实例化这个过程的,即 类名(args)这个调用等同于 Meta 类名.__call__(类名,args)
而你自定义的类中的__new__和__init__本质上是 type.__call__调用的,所以造成了你看到的输出顺序
先用局域网两台电脑之间测速再测外网
2017-07-26 21:45:36 +08:00
回复了 crab 创建的主题 分享发现 查询自己 QQ 号码注册的具体时间
@c4tn java 的毫秒版本 unix 时间戳
2017-07-26 18:12:47 +08:00
回复了 bccber 创建的主题 Python 用类作字典的 Key 能搞不?
刚才没注意,python 的 dict 会考虑__eq__的,测试方法如下
>>> class A:
... def __hash__():
... return 1
...
>>>
>>> class A:
... def __hash__(self):
... return 1
... def __eq__(self,a):
... return True
...
>>> {A():1,A():2}
{<__main__.A object at 0x0000026C84DA3D30>: 2}
>>> class A:
... def __hash__(self):
... return 1
...
>>> {A():1,A():2}
{<__main__.A object at 0x0000026C84DA3320>: 1, <__main__.A object at 0x0000026C84DA3D68>: 2}
>>>
2017-07-26 17:12:08 +08:00
回复了 bccber 创建的主题 Python 用类作字典的 Key 能搞不?
@bccber python 的 dict 并不考虑你的__hash__和__eq__,他是直接比较内存地址的
2017-07-26 12:10:34 +08:00
回复了 bccber 创建的主题 Python 用类作字典的 Key 能搞不?
当然可以了
Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> class A:
... pass
...
>>> {A():1,A():2}
{<__main__.A object at 0x0000026C84DA32E8>: 1, <__main__.A object at 0x0000026C84DA3320>: 2}
>>>
2017-07-26 09:44:43 +08:00
回复了 permaylau 创建的主题 分享发现 Adobe 将于 2020 年停止开发和更新 Flash
@KingBillSame 然后 adobe 抡起专利大棒好好敲诈一笔
2017-07-26 08:02:17 +08:00
回复了 gclove 创建的主题 全球工单系统 腾讯 DNSPod DNS 119.29.29.29 为什么不能解析 www. PHP .net
南通电信,也要加 TCP 才有结果

D:\BIND9.10.5-P1.x64>dig @119.29.29.29 www.php.net

; <<>> DiG 9.10.5-P1 <<>> @119.29.29.29 www.php.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26202
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.php.net. IN A

;; Query time: 17 msec
;; SERVER: 119.29.29.29#53(119.29.29.29)
;; WHEN: Wed Jul 26 08:01:04 ?D1ú±ê×?ê±?? 2017
;; MSG SIZE rcvd: 40

D:\BIND9.10.5-P1.x64>dig +tcp @119.29.29.29 www.php.net

; <<>> DiG 9.10.5-P1 <<>> +tcp @119.29.29.29 www.php.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8642
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.php.net. IN A

;; ANSWER SECTION:
www.php.net. 300 IN A 220.181.136.30
www.php.net. 300 IN A 220.181.136.41
www.php.net. 300 IN A 220.181.136.55

;; Query time: 439 msec
;; SERVER: 119.29.29.29#53(119.29.29.29)
;; WHEN: Wed Jul 26 08:01:49 ?D1ú±ê×?ê±?? 2017
;; MSG SIZE rcvd: 88
2017-07-26 04:09:12 +08:00
回复了 saximi 创建的主题 Python 请问这个例子中的 lambda 表达式是怎么起作用的?
@klesh 他说的应该是 py 的 lamdba 表达式不支持跨行吧
1 ... 67  68  69  70  71  72  73  74  75  76 ... 193  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1066 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 82ms · UTC 18:54 · PVG 02:54 · LAX 11:54 · JFK 14:54
Developed with CodeLauncher
♥ Do have faith in what you're doing.