V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  fy  ›  全部回复第 58 页 / 共 69 页
回复总数  1371
1 ... 54  55  56  57  58  59  60  61  62  63 ... 69  
@necomancer
@qihboy

虽然 PEP3101 并没有推荐不推荐的内容, str.format 的 3.5 版本文档里也没有这句话,但我在别处发现了一段信息:
https://docs.python.org/3.5/library/stdtypes.html#printf-style-string-formatting

Note: The formatting operations described here exhibit a variety of quirks that lead to a number of common errors (such as failing to display tuples and dictionaries correctly). Using the newer str.format() interface helps avoid these errors, and also provides a generally more powerful, flexible and extensible approach to formatting text.

他说元组和字典的显示有问题,然而貌似并没有:

>>> '%s and %s a' % ((1,2,3), {1:2, 'a':2})
"(1, 2, 3) and {1: 2, 'a': 2} a"

不知道为什么官方文档会有如此明显的倾向性,还没给出合适的例子。我个人觉得 .format 作为一个复杂蛋疼的机制,还是太冗长,不讨喜。
2016-01-25 23:53:53 +08:00
回复了 pinggjayy 创建的主题 Python python post 如何传递中文
1. 确定双方编码,很重要,建议 utf-8
2. 用 requests 做网络请求,比 urllib2 省心一万倍( HTTP for Humans ,给正常人用的 HTTP )
3. Python3 ,消灭绝大部分乱七八糟的编码问题
@qihboy 咦,请问 python 推荐用 format ,有出处吗?
一直在用 %s 来输出全部类型……
2016-01-24 16:30:02 +08:00
回复了 moult 创建的主题 程序员 用户注册的时候有没有必要填写用户名
@csttvista

1. 手机号当用户名,直接绑定手机,就算你不信任对方网站,也不可避免的泄露了一个真实信息。
2. 如果网站设计时候考虑了换号问题那还好,如果没考虑 ……
3. 用户名并不长,多数是 3-15 , 4-15 , 6-15 ,很多人都有一个通用用户名,到了新网站一看有记录,那八成是以前注册过。
4. 换手机号比换邮箱频繁的多:高中毕业,异地上大学换号;大学上完可能又到别的城市,换号;资费不合理,换号;出国,换号……

然而我的邮箱用了将近十年都没换过。
2016-01-24 14:32:17 +08:00
回复了 Cassandra 创建的主题 Python 强迫症已被 python 的 dictionary 逼疯
@kqz901002 还撕,没完了是吧
以 $ 开头对解释器来说极其方便,判断是不是变量只需要读一个字符。
2016-01-23 18:04:05 +08:00
回复了 Cassandra 创建的主题 Python 强迫症已被 python 的 dictionary 逼疯
@kqz901002 大哥 下划线命名是变量名和函数名啊, OrderedDict 是驼峰没错,但这是类名啊!

我之前也说了公司或者老师要求的编码规范最大。除此之外, Python 大多数库通行的规则就是小写下划线。当然有些著名的库不是,我们都知道那些库很多年头了或者本身就是从 java 复刻的。

通行不通行这也不是我钦定的,我举个例子

def helloWorld():
pass

在 PyCharm 下:
Function name should be lowercase

在 Vim 插件 ycm 下(用的是 jedi 还是 pylint 我忘了)
[invalid-name] Invalid function name "helloWorld"

我再重复一次,当前要求的编码规范最大。而 Python 最通行的函数名变量名命名规则是小写下划线。
2016-01-23 11:09:04 +08:00
回复了 Cassandra 创建的主题 Python 强迫症已被 python 的 dictionary 逼疯
@SharkIng PEP8 ,用的最普遍的编码标准。当然 java 也可以不用驼峰,但谁没事这么做呢?
2016-01-23 01:22:49 +08:00
回复了 Cassandra 创建的主题 Python 强迫症已被 python 的 dictionary 逼疯
@Cassandra 可以啊 我这里就是 3 。实际输入数据的话,楼主你要看输入的方式了,比如源文件是一行 key 一行 value ,或者源文件是 csv 格式,源文件是 json 格式等等……

如果数据比较少打算直接写在代码里,简单的 KV 数据基本上打开编辑器一条正则替换就搞定啦!

老师规定的话就按老师的走了。
2016-01-23 01:09:45 +08:00
回复了 Cassandra 创建的主题 Python 强迫症已被 python 的 dictionary 逼疯
@Cassandra
这个姿势: student_grades = OrderedDict((('Steven',90), ('Chole',70),('Bob', 100)))

另外 Python 不用驼峰法则!命名是中间隔下划线的,函数和类方法都是这样的!
2016-01-23 00:54:36 +08:00
回复了 Cassandra 创建的主题 Python 强迫症已被 python 的 dictionary 逼疯
我也觉的这是一个不好的地方,有序字典不是不 work ,是你先创建了一个标准字典,然后标准字典转换成了无序字典。

换一种创建方式就好了
OrderedDict((('c', 3), ('a',1), ('b',2)))

我觉得这确实是个问题
2016-01-23 00:25:36 +08:00
回复了 guyskk 创建的主题 Python 遇到一个奇怪的问题,怀疑是 python 的 bug
补充一个 Python 2.7 的:

Python 2.7.10 (default, May 23 2015, 09:40:32) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> module_keys = ['k1', 'k2']
>>>
>>> print([id(locals()) for k in module_keys])
[40479312, 40479312]
>>> id(locals())
40479312
2016-01-23 00:02:22 +08:00
回复了 guyskk 创建的主题 Python 遇到一个奇怪的问题,怀疑是 python 的 bug
>>> print([id(locals()) for k in module_keys])
[53111664, 53111664]
>>> id(locals())
41054976

确实如此
2016-01-23 00:01:00 +08:00
回复了 guyskk 创建的主题 Python 遇到一个奇怪的问题,怀疑是 python 的 bug
楼主的代码报错:

k1 = 'v1'
k2 = 'v2'

module_items = locals()
module_keys = ['k1', 'k2']
print({k: locals()[k] for k in module_keys}) # 这一句


我的测试结果( Python 3.4 ):

>>> print({k: [locals(), k] for k in module_keys})
{'k1': [{'.0': <list_iterator object at 0x03299E10>, 'k': 'k2'}, 'k1'], 'k2': [{'.0': <list_iterator object at 0x03299E10>, 'k': 'k2'}, 'k2']}
>>>
>>>
>>> locals()
{'k2': 'v2', '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, 'module_keys': ['k1', 'k2'], 'module_items': {...}, 'k1': 'v1', '__builtins__': <module 'builtins' (built-in)>, '__package__': None, '__name__': '__main__', '__doc__': None}

确实是报错了,我试着输出了 locals()

可以看到 locals() 所指代的内容不同,我猜测是生成器的实现有所不同了
2016-01-22 23:52:21 +08:00
回复了 hhrmatata 创建的主题 Python python 3 对多进程的支持好吗?
和原来一样:
看类型,计算密集型还是那样,多线程等于没有。
但是 IO 等待型,多线程有效。
2016-01-20 13:05:36 +08:00
回复了 Feiox 创建的主题 Python 为什么 Paramiko 都支持 Py3 了 fabric 还是不支持 Py3 啊?!
开发者在搞新项目,钦定说这是 Fabric2
2016-01-20 13:03:12 +08:00
回复了 ldmsoft 创建的主题 Python 想利用 python 写一个简单的个人博客,该如何入手?
入门首选 Flask ,官网教程参照着做一下就好,很详细。

个人推荐的 ORM 是 peewee ,简单好用。

html/css/js 基础姿势不用说了
想一想 只能口头上资慈一下了

因为我的移动硬盘主要是用来归档数据的,容量大可靠才是王道 233
2016-01-19 23:34:16 +08:00
回复了 ernest 创建的主题 Markdown Evernote 开始悄悄支持 Markdown,但...
握草 忽然发现自己的发言多了一个链接,这是什么黑科技…… 我试一下: +bUuL1Q-
2016-01-19 23:32:39 +08:00
回复了 ernest 创建的主题 Markdown Evernote 开始悄悄支持 Markdown,但...
@xuxanwan 你一定没有经历过低配时代( P4 3.0 以及 AMD5000+)内存一度被建立在.NET 平台上的 Evernote 所支配的恐惧。

太慢了,真的。那时候我笔记还不是很多,却被卡成了狗。

后来在为知笔记与网易云笔记中选了为知笔记,原因是网易那个不能导出为通用格式,能迁入无法迁移走,太流氓。

加上为知确实挺好用的,于是用到现在。

注册时间: 2011-08-17 16:03:43
1 ... 54  55  56  57  58  59  60  61  62  63 ... 69  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5864 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 46ms · UTC 02:07 · PVG 10:07 · LAX 18:07 · JFK 21:07
Developed with CodeLauncher
♥ Do have faith in what you're doing.