在代码中放置数据时使用技巧来拯救程序员是否可以?
举个例子:在Python中输入一串字符串真的很烦人:
["January", "February", "March", "April", ...]
我经常这样做,以免到处都要输入引号:
"January February March April May June July August ...".split()
这样做花的时间和之前一样,但我输入的月份数量却翻了一倍。再举个例子:
[('a', '9'), ('4', '3'), ('z', 'x')...]
而不是:
map(tuple, "a9 43 zx".split())
这样做花的时间少多了。
13 个回答
6
在一个比较智能的编辑器里,你可以这样做:
- 选择你感兴趣的那几行,
- 插入替换内容(比如把"
<space>
"替换成"<space>
",这是第一个例子), - 勾选选中的行的复选框,
- 点击“全部替换”,
- 啪.. 完成了。
既可读又容易输入... 要好好利用编辑器的强大功能!
19
一个好的文本编辑器可以让这些问题变得不再重要。例如,我可以在我的代码中输入以下这一行:
print `"January February March April May June July August September October November December".split()`
然后我可以使用快捷键 V:!python<ENTER>
来通过 Python 解释器运行这一行代码,输出结果如下:
['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
我在这里用的是 Vim 作为例子,但我相信用 Emacs、TextMate 等其他编辑器也同样简单。
33
代码通常会被读很多次,而写代码只需要一次。
为了节省写代码的时间而牺牲可读性,通常不是一个好主意,除非你是在写一些临时用的代码。
第二个版本的代码不够明确,你需要花一些时间去理解它在做什么。而我们现在讨论的只是变量的创建,不是算法!