我试图根据列中的字符串给“描述”列贴上标签。为此,我使用if/ for语句。
现在看起来是这样的:
def char_matching(chars):
if 'software' in chars:
return 'Software development'
elif 'Data' in chars:
return 'Data Science'`但是,如果我想在一个专栏中找到“数据科学”这个词,我会写:
elif 'Data-science' in chars:
return 'Data Science'`或
elif 'Data|science' in chars:
return 'Data Science' `这是否适用于大写锁,即“数据”和“数据”。你怎么克服那个障碍?
发布于 2018-03-26 17:01:48
if / else构造中的字符串可能包含空格。
这将return“数据科学”,如果“数据科学”(大小写不敏感)发生在您的字符串变量的任何地方。
处理不区分大小写的比较与chars.lower()。如果不进行此更改,则将适用区分大小写的方法。
def char_matching(chars):
val = chars.lower()
if 'software' in val:
return 'Software development'
elif 'data science' in val:
return 'Data Science'
...要测试多个单词,可以使用and
def char_matching(chars):
val = chars.lower()
if 'software' in val:
return 'Software development'
elif ('data' in val) and ('science' in val):
return 'Data Science'
...https://stackoverflow.com/questions/49496755
复制相似问题