尝试从列表中测试字符串的一部分

时间:2017-04-21 04:07:13

标签: python string

我有一个像这样的块:

example of list:
pommes : 54
bananes : 18 : 99
orange 

测试左弦和右弦是否用分隔,右弦的类型是 int

我正在尝试将额外的“:99”作为错误捕获。此外,如果缺少 my:这一事实。如果有任何方法可以添加并将其与gauche2 [2]相关联。

for i in message:
    parts = i.split(":")
    gauche = parts[0].strip()
    droite = parts[1]
    try:
        droite = int(droite)
        if not gauche.isalpha():
            print("La ligne '", i, "' n'est pas correctement formaté.")
            sys.exit()
    except ValueError:
        print("La ligne '", i, "' n'est pas correctement formaté.")
        sys.exit()  

1 个答案:

答案 0 :(得分:1)

您可以使用 split() len

data = """
exemple of list:
pommes : 54
bananes : 18 : 99
orange 
"""

for line in data.splitlines():
    if len(line.split(':')) > 2:
        raise ValueError(line, '<< bad line')

对于你的例子:

for i in message:
    parts = i.split(":")
    if len(parts) > 2:
        raise ValueError(i, '<< bad line')