我想从文件名“。”中提取下一部分,即000.xyz。 [文件名为Axx-000.xyz]
所以我的朋友给我看了这段代码,但我听不懂代码。
def get_rank(xyz):
pref = xyz.split('-')[1]
pref = pref.replace('.xyz', '')
return pref
我希望代码将结果显示为Axx-000.xyz应该为000或000.xyz
非常感谢。
答案 0 :(得分:2)
因此,这里是逐行对此功能的说明。
pref = xyz.split('-')[1]
:此行可以分为以下两行:
split_string = xyz.split('-')
pref = split_string[1]
第一行的意思是“查看字符串并在找到字符'-'
的任何地方剪切它。例如,对于字符串“ Axx-000.xyz”,该字符被发现一次,splitted_string将是一个2个字符串的列表:["Axx","000.xyz"]
。
第二行的意思是“将split_string
放入列表的第二个元素。
然后,行pref = pref.replace('.xyz', '')
调用方法replace
,这意味着:“查看字符串,然后在找到字符串'.xyz'
的任何地方,将其替换为''
(什么都没有。)
因此,函数返回的值包含表["Axx","000.xyz"]
的第二个元素,而没有'.xyz'
,因此仅包含000
。
答案 1 :(得分:0)
您使用def
定义python函数,括号内有您在调用函数时定义的函数参数(例如get_rank("Axx-000.xyz")
)。
pref = xyz.split('-')[1]
在这里,您用-
拆分xyz字符串,并将拆分后的元素分配给数组。 pref
变量获取该数组的索引[1]的值(第二个值)。
pref = pref.replace('.xyz', '')
在这里,您只需将'.xyz'短语替换为''
,将其他词从字符串中删除.xyz
。
在最后一行,您得到最终结果-000
字符串。