假設我有一個主要形式命名爲「main_form
」我有幾個形式的名稱,比如「w_main_form
」,「g_main_form
‘等等等,這是基於’main_form
」,他們根據變化'category
'。最簡單的方法
現在有什麼簡單的方法來生成派生形式的名稱以及如何調用它們。
設類別爲「iron
」那麼表單名稱應該是「w_main_form
」當類別爲「coal
」的形式,名稱應該是「g_main_form
」。
假設我有一個主要形式命名爲「main_form
」我有幾個形式的名稱,比如「w_main_form
」,「g_main_form
‘等等等,這是基於’main_form
」,他們根據變化'category
'。最簡單的方法
現在有什麼簡單的方法來生成派生形式的名稱以及如何調用它們。
設類別爲「iron
」那麼表單名稱應該是「w_main_form
」當類別爲「coal
」的形式,名稱應該是「g_main_form
」。
>>> main_name = "main_form"
>>> derived_names = []
>>> for prefix in ["w_", "g_"]:
derived_names.append("%s%s" % (prefix, main_name))
>>> derived_names
['w_main_form', 'g_main_form']
或者,與列表理解(我的首選方法):
>>> derived_names = ["%s%s" % (prefix, main_name) for prefix in ["w_", "g_"]]
>>> derived_names
['w_main_form', 'g_main_form']
在一般情況下,這樣你就可以自己申請同樣的原則,你要想想你想在方面做了變換的功能f(main_name, data)
和data
提供給它。在這種情況下,操作是「前置」(我使用"%s%s" % (prefix, main_name)
實施),數據是所有前綴。
編輯:是的。
>>> category_to_prefix = {'iron': 'w_', 'coal': 'g_'}
>>> def category_to_form_name(category):
return '%s%s' % (category_to_prefix.get(category,""), 'main_form')
>>> category_to_form_name('iron')
'w_main_form'
>>> category_to_form_name('coal')
'g_main_form'
>>> category_to_form_name(None)
'main_form'
請注意並接受答案(點擊向上箭頭和綠色複選標記),如果它是你正在尋找的。
假設類別是「鐵」,那麼表單名稱應該是「w_main_form」,並且當類別是「煤」時,表單名稱應該是「g_main_form」?您現在可以幫忙嗎? –
這將做您的評論說什麼..
def generate_Name(base, category):
if category == 'iron':
derived_name = 'w_'+base
elif category == 'coal':
derived_name = 'g_'+base
return derived_name
iron_form = generate_Name('main_form', 'iron')
coal_form = generate_Name('main_form', 'coal')
print iron_form
print coal_form
給
w_main_form
g_main_form
假設類別是「鐵」,那麼表單名稱應該是「w_main_form」當類別爲「煤「表單名稱應該是」g_main_form「?你現在可以幫忙嗎? –
什麼決定了一個類別的表單名稱?如果它不能被計算,那麼使用一個字典來查找它。不知道你的意思是「如何調用它們」 - 它們是否可以調用,比如'w_main_form()'? – martineau