V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zhzy  ›  全部回复第 1 页 / 共 5 页
回复总数  83
1  2  3  4  5  
2 小时 7 分钟前
回复了 woodytang 创建的主题 程序员 写了 2 天的 Python ,有点奇怪的感觉。。。
1. 可能还是不熟悉吧, 首先那一大堆生成归属年月的代码其实直接格式化成字符串就行了, groupby 和 pivot_table 都是支持字符串的, 而且你也不需要先 groupby 再 pivot_table.

https://i.imgur.com/AHEZf7m.png

2. 至于 df_pivot['余额'] = df_pivot.iloc[:, 1:].sum(axis=1), 不就是把 sum 函数的返回值赋值给余额那一列么. 只是说它帮你处理了一下, 如果不存在这一列的话就新创建一列. 具体来说这是一个语法糖, 在类的 __setitem__ 方法里实现.

3. Python 有 type hint. 3.6 就有了, 不过要到好用的程度的话至少要到 3.9 和 3.10 吧.

4. 不要这样创建元组. 格式化工具会帮你加上括号的. 这个地方确实容易踩坑, 特别是只有一个元素的时候. 我是这样理解的, 在 Python 里 tuple 实际上是逗号定义而不是括号定义的.

https://i.imgur.com/IP9n5sX.png

5. 如果你是团队的话, 是会有规范的. 至于正经项目怎么说呢, 要写肯定能写, 毕竟 Instagram 也在用 (虽然是魔改的). 而且所有的语言都或多或少有一些黑魔法, 为了工程化不用就是了. 真要变成 Go 那样说实话有的时候也挺难受的.
200 天前
回复了 zcf2009 创建的主题 问与答 求助: word 保存的内容消失了!
当时幸好我有用 snipaste 截图的习惯(因为翻页对照很麻烦),snipaste 会记录你每次截图的全部屏幕区域,才保留了一部分之前修改的内容,当时恨不得直接给 snipaste 的作者磕一个
200 天前
回复了 zcf2009 创建的主题 问与答 求助: word 保存的内容消失了!
踩过同样的坑…是不是因为网络不好一直提示上载不成功?基本没救了,赶紧重写吧。
关键的地方在于你在资源管理器 onedrive 文件夹打开的其实是一个在线文档(而不是你硬盘里的那个文件),也就是如果被天才的微软发现你在编辑一个 onedrive 里的文档,他会机智地把你编辑的文档换成在线的那个。

这时候如果你的网络连不上服务器,点保存时你保存的位置是在线的那个(显然失败了,会提示上载不成功,但是不是弹窗而是一个 banner );

接下来你很有可能跟当时的我一样非常有信心因为是编辑的本地文件上载失败就失败吧。然后点击了关闭(因为你觉得你保存了,而且我记得好像这时候关闭是不会弹框提示是否要保存);

这时候(最过分的来了)因为你是编辑的在线文档,所以 word 设置里的定时保存是不生效的,也就是本地是找不到自动保存的文件的。

只能说不愧是你,全部都防住了啊😃
219 天前
回复了 zhwguest 创建的主题 Go 编程语言 恨死 go 的导出变量命名规则了
@jorneyr 没用 (T) 已经很不错了
glob 了解一下
262 天前
回复了 AnyISalIn 创建的主题 程序员 发现 gradio.app 用来开发 demo 程序很方便
是挺方便,就是不太好看。
如果为了好看去改样式,好像又不是很合理...
[Textualize/textual]( https://github.com/textualize/textual/) 了解一下
282 天前
回复了 Leon6868 创建的主题 问与答 MAUI 值得学习吗?
基本上还是 xamarin 那套东西,微软的东西你懂的,过两年就会重命名一次(其实谷歌也会在一个明明使用人数很多且基本稳定的产品上过几年搞个 2.0 ,破坏性变更也没什么,关键是社区分裂,找资料的时候总感觉跟别人用的不是一个东西😓例子有 angular go tensorflow yarn 甚至 caddy ,flutter 说不定也要走一遭
295 天前
回复了 marin11 创建的主题 程序员 一些关于 Python 编程的疑惑
@zhzy repl 打错了
295 天前
回复了 marin11 创建的主题 程序员 一些关于 Python 编程的疑惑
支持 rrpl 的语言都可以吧,只是可能没有一个像 ipynb 那样具体的文件
297 天前
回复了 zzlit 创建的主题 程序员 求助一个数字输入的正则表达式
其实写不明白的话, 可以考虑不用正则来做吧...
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@ispinfx #39 啊 我明白您的意思了, 其实我的意思是 collections.Counter 是可以直接传一个可迭代对象或者 map 的, 比如传一个 str 或 list 进去就可以直接做计算
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@pathetique #40 pathlib 是一个文件系统路径库,封装了一些比较方便的功能,比如可以直接读取文本,用来代替 with...as f: f.read ;
counter 是一个字典,对于一个字典对象 d ,d.items 是取出每一项的键(key)和值(value)
for k, v in d.items()这个循环相当于逐一取出字典的每一项
counter.get(key, defaultValue)实际上可以理解为 if key in counter.keys: counter[key]; else: return defaultValue, 作用是尝试根据键读取字典的一个值,如果不存在这样的键, 返回 defaultValue
在 python 里其实这类方法很多, 可以节省很多代码量, 并且速度要比你自己写的逻辑快, 因为在底层它可能会做一些优化
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@ispinfx #36 是的,可以直接根据文本构造一个步长为 1 每个元素长度为 2 的 list ,然后 Counter 就行,不过那样逻辑就被隐藏掉了,OP 的代码主要问题是扫描 list 来计数,这里只是展示一下更合理的逻辑
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@zhzy #29 还是把这个补上吧,用 get 的默认值,不用 if in keys 判断 https://i.imgur.com/a1eIdoO.png
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@pathetique #31 如果只是处理一下停用词的话就一两行代码,不需要学,抄一下就行,百万字其实很少的,只要避免循环嵌套这种性能问题不大的
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@zhzy #28 惊了,手快了,counter 那个循环里要判断一下有没有 key ,没有的话设置为 1 ,有的话加 1
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
@zhzy Python 不是 c ,很多东西不需要自己实现的,而且尽量不要用内置的类型作为变量名,快速糊了一个版本,应该会快一些。https://i.imgur.com/s2EirBo.png
300 天前
回复了 pathetique 创建的主题 Python 弱极了,请教 Python 多线程如何快速开始
看了一下,没做分词,直接每两个字作为一个词;
用 list 循环判断是否存在,而且文本里没有重复的文字么,用两个 for 循环感觉没什么必要,相当于每个词都翻一遍全文,O(n^2),不慢才怪吧。其实直接一个循环然后字典里+1 就行了,虽然也怪怪的,但是至少比现在的快;
其实还是建议不要自己写,或者至少了解一下这类算法应该怎么写...完全用自己的思路闷头搞有时候真的不容易意识到代码里的问题...要不还是老老实实上 NLP 库
337 天前
回复了 zx900930 创建的主题 NAS 2023 年 NAS 机箱求推荐
@zx900930 其实你接到主板的 sys_fan 风扇口就可以了, 风扇本身支持调速的, 而且如果是 L 型的电源线(tb 有定制性)和 SATA 线还可以换一个 25 的风扇, 那个声音更小
1  2  3  4  5  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1191 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 25ms · UTC 18:23 · PVG 02:23 · LAX 11:23 · JFK 14:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.