Zha*_*g18 26 python quotes perl
我在Perl中做了很多这样的事情:
printf "%8s %8s %8s\n", qw(date price ret);
Run Code Online (Sandbox Code Playgroud)
但是,我能用Python得到的最好的是
print '%8s %8s %8s' % (tuple("date price ret".split()))
Run Code Online (Sandbox Code Playgroud)
我只是想知道是否有一种更优雅的方式呢?如果你告诉我那就好了,我就没事了.
Dav*_*d Z 23
好吧,绝对没有办法完全按照你在Perl中做的事情,因为Python会抱怨未定义的变量名和语法错误(可能缺少逗号).但我会这样写(在Python 2.X中):
print '%8s %8s %8s' % ('date', 'price', 'ret')
Run Code Online (Sandbox Code Playgroud)
如果你真的喜欢Perl的语法,我想你可以定义一个qw这样的函数:
def qw(s):
return tuple(s.split())
Run Code Online (Sandbox Code Playgroud)
然后你就可以写了
print '%8s %8s %8s' % qw('date price ret')
Run Code Online (Sandbox Code Playgroud)
除了参数的一对引号之外,它基本上类似于Perl qw.但我会毫不犹豫地推荐这个.至少,不要只是因为你错过了Perl - 它只能让你否认你现在正在使用一种新的编程语言;-)这就像关于Pascal程序员切换到C并创建宏的旧故事
#define BEGIN {
#define END }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9265 次 |
| 最近记录: |