2013-02-26 62 views
0

有一个Python代码here的示例。我找不到以下几行的任何解释:什么是Python代码中的'r_ []'和“basename ='arc'”行

x = r_[36, 36, 19, 18, 33, 26] 
y = r_[14, 10, 28, 31, 18, 26] 
basename = 'arc' 

请告诉我它是如何工作的。或参考任何信息页面。谢谢。

+0

我不知道这个名字。我想如何提出这个问题?我什至不能搜索它... – Olexandr 2013-02-26 14:42:14

+0

我不知道为什么这是封闭的。这看起来像一个合法的问题。虽然也许不会总结两个无关的问题。 basename ='arc'不过是一个字符串赋值,它可以随后用于任何字符串的使用,在这种情况下帮助命名文件。 – Stuart 2013-02-26 14:50:19

+0

@Stuart是的,我现在可以看到。谢谢。 – Olexandr 2013-02-26 15:14:00

回答

7

r_是numpy的魔术:http://docs.scipy.org/doc/numpy/reference/generated/numpy.r_.html

basename稍后用于产生一个文件名:

... 
# basename is actually set to "circle" ("arc" is commented out) in that example. 
# this saves the figure to "circle_residu2.png" or "circle_residu1.png" 
p.savefig('%s_residu%d.png' % (basename, 2 if residu2 else 1)) 
+2

numpy magic ...不错。 – mgilson 2013-02-26 14:24:12

+0

'basename'不会“生成”文件名;在这里,它只是一个变量名称。 – 2013-02-26 14:25:32

+0

它被_used_稍后生成一个文件名。 ('p.savefig('%s_residu%d.png'%(basename,a_digit)')。对不起,如果不清楚,重新编写。 – 2013-02-26 14:26:02

2

按照NumPy for Matlab Users pager_是为与创建创建以允许号范围的对象符号如Matlab。 即

在MATLAB®,0:5可以同时用作文字范围和a '片' 指数(在括号内);然而,在Python中,像0:5这样的结构只能用作切片索引(在方括号内)。

检查the docs了解r_如何工作的更多信息。