仅当该列表中的字母形成时才检查参数

我有三个参数,所有参数都必须由字母组成,例如 john、car、yoga。如果参数包含任何数字或符号,我需要打印错误,您只需要使用字母。我想我需要创建一个列表并仅在该列表中的字母形成时检查参数。有人可以帮我在 python 中做到这一点吗?


牧羊人nacy
浏览 149回答 2
2回答

白猪掌柜的

我想即使它有一个带有数字的字符串,您也希望返回 false 试试下面的代码。布尔返回函数 def isstring(*args):        for i in range(len(args)):            if any(char.isdigit() for char in args[i]):                 return False        return True    print(isstring("nikhil","kone1ru"))字符串返回函数def errorstring(*args):    for i in range(len(args)):        if any(char.isdigit() for char in args[i]):            return args[i]    return Nonestr = errorstring("nikhil", "kone1ru")if str is None:    print("No string contains number")else:    print("String with number:"+str)

慕丝7291255

通常如果你只想知道给定的字符串是否只包含字母(没有空格、标点符号、数字等),你可以简单地.isalpha()在字符串上使用 Python 的函数。例如,'john'.isalpha()返回True,但'johnny5'.isalpha()返回False。 但是,除非您将字符串描述为 Unicode,否则这对于带有 Unicode 字母的内容将失败。例如,'Köln'.isalpha()返回False,但u'Köln'.isalpha()返回True。不过,我认为这在 Python 3.x 和 Python 2.x 中可能有所不同。我在这里看到了另一个答案 used isdigit(),但这会传递给带有非字母数字符号的字符串,如john+doe或doe,john。如果您有一个格式正确的字符串列表,并且当且仅当它们都是严格按字母顺序排列时您想返回“True”,那么此函数应该可以满足您的需求:def check_list(mylist):    for word in mylist:        if not word.isalpha():            return False    return True或等效但更短的方法:def check_list(mylist):    return not False in [word.isalpha() for word in mylist]在各种字符串的列表上运行它:#!/usr/bin/python# -*- coding: latin-1 -*-def check_list(mylist):    return not False in [word.isalpha() for word in mylist]mylist1 = ['Berlin', u'Köln', u'Munich']print("My strings: %s" % mylist1)print("All of my strings are alphabetic strings:")print check_list(mylist1)mylist2 = ['Berlin', u'Köln', u'Munich 2018']print("My other strings: %s" % mylist2)print("All of these strings are alphabetic strings:")print check_list(mylist2)# Output is:#  My strings: ['Berlin', u'K\xf6ln', u'Munich']#  All of my strings are alphabetic strings:#  True#  My other strings: ['Berlin', u'K\xf6ln', u'Munich 2018']#  All of these strings are alphabetic strings:#  False棘手的部分是你说你想要你的列表sys.arg(或者更具体地说, sublist sys.arg[1:])。挑战可能是将其放入适当的可识别字符串列表中,而不会出现烦人的UnicodeDecodeError错误。但是一旦你弄清楚了,就.isalpha()应该像这里一样工作。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python