V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  copie  ›  全部回复第 2 页 / 共 3 页
回复总数  46
1  2  3  
2019-08-25 12:59:56 +08:00
回复了 onice 创建的主题 Python Python 开发大家用的什么开发工具呀?
vscode + ipdb
2018-08-08 14:07:01 +08:00
回复了 ICKelin 创建的主题 分享创造 一个内网穿透服务
@northernlights #11 你这样说的有问题的,即使普及了 IPV6, ISP 也不会给你公网 IP, NAT 依然存在.
Python 的思想不应该是能运行 Python 解释器会想一切办法运行,不能运行就抛出异常。在代码里面放太多的类型检查会导致代码异味。
为什么没有人说 websocket
join 是首先遍历 list 中的每一个字符串确定 maxchar 通过 maxchar 和所有字符串的长度和 sz 通过 PyUnicode(sz,maxchar) 创建新的字符串对象 然后通过每一个字符串的长度和偏移将 list 字符串快速拷贝到新串中。
format 其实是先通过 FORMAT_VALUE 将其他类型转换为 str 类型并且把 str 压入栈。然后进行 join

join 和 format 两个都落实到 _PyUnicode_JoinArray()这个函数上去了。

比如 f"{100},200,{300}"等同与''.join(['100',',200,','300'])

说到效率问题因为 join 只能连接字符串而且 FORMAT_VALUE 这个字节码他的具体计算会落实到 Python 实现所以转化的效率不高。

也就是说 join 和 format 的效率区别在于 format 需要将其他类型转化成为 str 而且这个转化过程还是 Python 实现的而 join 只针对与 str.
2018-07-23 07:18:06 +08:00
回复了 firejoke 创建的主题 Python 被一个及其简单的 a,b = b,a 问倒了,在线感性求助!!!
要计算一个变量的 id 的时候一定要确保这个变量不是被计算出来的。
简单来说就是这个变量一定是有人引用的。只有这样才可以算出来真正的 id。
c = (a,b)
d = (b,a)
这里 id(c) 就 不等于 id(d) 了。
会出现 id((a,b)) 等于 id((b,a)) 是因为引用计数为 0+内存被回收+缓存池 导致的
2018-06-27 12:39:39 +08:00
回复了 hoxis 创建的主题 Python Python 语法糖之「列表推导式」
@lance6716 #14 其实我的版本是 py3.6.5

In [1]: import dis

In [2]: dis.dis("[a for a in [1,23,3]]")
1 0 LOAD_CONST 0 (<code object <listcomp> at 0x7f39be9236f0, file "<dis>", line 1>)
2 LOAD_CONST 1 ('<listcomp>')
4 MAKE_FUNCTION 0
6 LOAD_CONST 5 ((1, 23, 3))
8 GET_ITER
10 CALL_FUNCTION 1
12 RETURN_VALUE

In [3]:
这个应该是你看到的样子。
我们看到 CALL_FUNCTION 运行的就是前面 MAKE_FUNCTION 产生的结果。
然而产生的这个函数的字节码是下面这个样子的所以我说的没有问题。
In [10]: dis.dis(x)
1 0 BUILD_LIST 0
2 LOAD_FAST 0 (.0)
>> 4 FOR_ITER 8 (to 14)
6 STORE_FAST 1 (x)
8 LOAD_FAST 1 (x)
10 LIST_APPEND 2
12 JUMP_ABSOLUTE 4
>> 14 RETURN_VALUE
2018-06-27 11:56:53 +08:00
回复了 hoxis 创建的主题 Python Python 语法糖之「列表推导式」
@lance6716 列表表达式确实使用的是 FOR_ITER 生成器表达式使用的字节码和生成器差不多的。
2018-06-26 19:50:12 +08:00
回复了 watermelon92 创建的主题 Python [求大神解答] Django 项目部署到线上后出现编码问题
@robinlovemaggie 但是通过配置 Python 启动的环境变量确实可以成功运行。但是如果有一天代码上线后出现问题远程打开代码注释都是乱码。log 汉字这是乱码岂不是更加的闹心。
2018-06-26 15:39:57 +08:00
回复了 watermelon92 创建的主题 Python [求大神解答] Django 项目部署到线上后出现编码问题
这个属于系统编码的问题。我用 docker 发布的时候如下解决的。

RUN echo "zh_CN.UTF-8 UTF-8" > /etc/locale.gen
RUN locale-gen
ENV LANG=zh_CN.UTF-8
2018-06-26 15:39:19 +08:00
回复了 watermelon92 创建的主题 Python [求大神解答] Django 项目部署到线上后出现编码问题
这个属于系统编码的问题。我用 docker 发布的时候如下解决的。


echo "zh_CN.UTF-8 UTF-8" > /etc/locale.gen
locale-gen
ENV LANG=zh_CN.UTF-8
2018-06-21 16:46:16 +08:00
回复了 lxbjkben 创建的主题 程序员 Java 主动 GC 功能
@ShineSmile Python 使用的是引用计数。处理循环引用使用标记-清除。为了加速使用了分代回收。虽然简单但是有效。
2018-06-21 11:50:36 +08:00
回复了 caixuanxu 创建的主题 Python Python 虚拟环境 你们是怎么配置的 不要百度的
百度的看不懂的话,谷歌的肯定没希望。
2018-06-18 01:49:13 +08:00
回复了 copie 创建的主题 Python 回复: id(1) 和 id(2) 返回的内存地址为什么相差 32?
@RLib Python2 小整数的实现原理是 long 和 Python3 是不同的
2018-06-18 00:04:23 +08:00
回复了 mimzy 创建的主题 Python id(1) 和 id(2) 返回的内存地址为什么相差 32?
由于我写的比较多,而且回复没有 md 所以我开辟了一个主题
https://www.v2ex.com/t/463799#reply0
2018-06-14 19:23:43 +08:00
回复了 copie 创建的主题 Python 基于 Python 实现的 Python 解释器
@thedrwu #7 现在还不可以。 哈哈,等到我把类相关的东西弄出来,加上我没有引入外部库,理论上是没有毛病的。
2018-06-14 18:24:14 +08:00
回复了 copie 创建的主题 Python 基于 Python 实现的 Python 解释器
@janxin #1 我也关注那个项目很久了一直都没有什么大的起色。
@jlzhu 你好 19 毕业的,我看到贵公司校招实习生没有关于 Python 开发 可以内推吗?
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2960 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms · UTC 14:35 · PVG 22:35 · LAX 06:35 · JFK 09:35
Developed with CodeLauncher
♥ Do have faith in what you're doing.