V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ipwx  ›  全部回复第 97 页 / 共 200 页
回复总数  3996
1 ... 93  94  95  96  97  98  99  100  101  102 ... 200  
2020-04-25 20:08:26 +08:00
回复了 ybw 创建的主题 程序员 有没有类似"给 C++程序员的 Python 教程"的东西
Python 讲语法不需要三四百页,十几个网页就够了。这种比比皆是。

讲库?逗我呢,你讲的完?
2020-04-25 14:21:35 +08:00
回复了 Flash1 创建的主题 Python win10 运行 pyw 文件后,怎么打开控制台窗口查看输出
有没有让 python 后台运行,同时又可以查看输出、运行状态的方法
----

用 Logging 模块而不是 print
@phpfpm emmm 其实 kd-tree 是 kN log N,k 是维度。所以 k 不大的情况下,也差不多是 N log N 了。但是它处理的是 特征向量,不是汉明码。汉明码是 0-1 binary 数据,反而不好处理。特征向量是实数向量,反而好处理一些。

产生图片特征向量,其实应该还是个 research topic 。我搞深度学习,但是不搞图片压缩,不太清楚那种算法比较成熟。你要让我想一下哪些方向有可能,然后进一步进入这个领域研究,我可能做得到。但现阶段给不了你意见。
你需要的是,能够用向量空间的欧几里得距离表示图片相似度的某个模型。

因为欧几里得距离下,可以用 KD-tree 进行相似向量查找。整个数据集两两找一遍是 N log N 的。
2020-04-25 00:46:08 +08:00
回复了 koswu 创建的主题 问与答 关于阿里的视频隐形水印
@koswu 把很少的内容均摊到很长的片段里面不就搞定了。。。
2020-04-24 21:31:11 +08:00
回复了 koswu 创建的主题 问与答 关于阿里的视频隐形水印
@koswu 从信息论角度看不是没有可能。。。即使重新拍摄引入噪声,只要分解出来的信噪比足够,就能还原原始信号。
首先,sql 注入很好解决。用 prepared statement 就行。而且 prepared statement 比 sql 直接塞值更高效。另外,大部分 ORM 都能有效利用各种机制防止注入。

其次,对于 XSS 。如果你不在后端检查,那么攻击者总能构造出让你能入库并原样返回给前端的内容。除非你前端是在显示内容的最后一步之前进行处理,在提交的时候过滤是无效的。当然,如果你前端在最后一步显示之前处理 XSS 的内容,那么后端可能不需要任何检查,也不需要什么 404 之类的状态吗。结合第一条的解决方案,正常入库出库就行。

但是对于用户体验而言,每次显示前处理 XSS 无疑会占用 CPU 资源。还不如你后端入库进行处理呢。
2020-04-24 14:31:30 +08:00
回复了 rapperx2 创建的主题 问与答 一段转码的 UUID 解了一天了解不出来,求大佬帮忙解下
楼主真逗。UUID 是 32 位 hex,不就是 16 个字节的二进制内容么。你用 uuid 拿到一个 UUID 对象而已,它的值就是上面这个。这不算转码,这叫存储了一个 UUID 对象,然后你反序列化了而已。。。

In [6]: for b in b'\x00\x00\x01[\xA7\x92O\xD9\x94#\x11\xE0\xCE-x\xE6':
...: print('{:02x}'.format(int(b)))
...:
00
00
01
5b
a7
92
4f
d9
94
23
11
e0
ce
2d
78
e6
2020-04-23 20:47:30 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
就是用个缓冲区自己解析一下。上面是伪代码,不是真的能运行的代码。
2020-04-23 20:46:52 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
@sunzy 基本思路:

buf = b''

def handle(cnt):
....buf += cnt
....while True:
........pos = buf.find(b'\n‘)
........if pos <= -1:
............break
........handle_line(buf[:pos])
........buf = buf[pos:]

def handle_line(line):
....do what you want to do

while not eof:
....handle(read(n))
if buf:
....handle_line(buf)
2020-04-23 14:48:29 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
我知道了你是不是要处理 ffmpeg 的进度输出。那个没换行,所以要么是 \b 退格,要么是 \r 回到行首。所以没有 \n 你之前用 readline 搞不定很正常。像我一般用 .read 手动处理界定符,真注意不到这个。
2020-04-23 14:45:36 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
@sunzy 嘛嘛。我一般用 .read(n) 直接 stdout.buffer.write 这种,Popen 我还真没用过 readline
2020-04-23 14:39:30 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
@sunzy 嗷原来你是 windows 啊。我一直在 linux 和 mac 下做,而且从来没用过 readlines,这倒是没注意到。
你可以不用这些框架,但是用了以后,你会感觉,“真香”
2020-04-23 13:45:30 +08:00
回复了 clockOS 创建的主题 健康 没有听说过《植物神经紊乱》的一定要了解一下
得过,焦虑症的原因。养了半年好了。
2020-04-23 13:42:30 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
另外 ffmpeg 的话,你可以考虑用库,比如:

https://github.com/kkroening/ffmpeg-python
2020-04-23 13:40:54 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
@sunzy 所以用 subprocess.Popen(..., stdout=subprocess.PIPE, stderr=subprocess.STDOUT) 最最方便的选择。
2020-04-23 13:40:17 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
@sunzy stderr=subprocess.STDOUT

你这最大的问题就是这两句:

line = r.stdout.readline()
line2 = r.stderr.readline()

想象一下,如果被调用的程序只通过一个 stdout 输出,那么你在第二行就会一直 hang,直到程序退出。反过来,如果被调用的程序只通过 stderr 输出,那你的程序就会在第一行 hang,直到程序退出。所以无论什么时候,这两行这么写都是不对的。除非你开两个线程后台读取。
2020-04-23 10:54:33 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
PYTHONUNBUFFERED=1 这个环境变量能关掉这个机制。
2020-04-23 10:54:16 +08:00
回复了 sunzy 创建的主题 Python 使用 subprocess 执行另一个脚本,如何实时输出?
@sunzy 没啥特别的,Python 有个机制,检测输出设备是啥。如果不是交互式的 terminal,那么就会自动打开 python 自己的输出缓存。这和你调用 python 脚本的输入缓存无关,人家没有把数据推过来,你的调用者怎么做也是枉然。
1 ... 93  94  95  96  97  98  99  100  101  102 ... 200  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2620 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 56ms · UTC 12:40 · PVG 20:40 · LAX 05:40 · JFK 08:40
Developed with CodeLauncher
♥ Do have faith in what you're doing.