Skip to main content
 首页 » 编程设计

python之如何检查有多少行以数字开头

2025年05月04日17yxwkf

假设一个字符串 'text' 代表多行,我如何计算有多少行以数字开头?

def digit_leading_lines(text): 
    n = 0 
    newlist = text.split() 
    for i in range (len(newlist)): 
        for j in range (len(newlist[i])): 
            if newlist[i][j].isdigit() == True: 
                n += 1 
    return n  

一旦我用 text = 'AAA\n1st' 测试它,它就会给出正确的输出 1。 但是当我输入 text = "\t4G\nHz\n"时,这会导致第一行以制表符开头,输出应该为 0。但是,它仍然给我 1 作为输出。

当我测试“0\n0 3\n\n”时,它给出了错误的输出 3。感谢您的帮助。

请您参考如下方法:

解决方法是:

def digit_leading_lines(text): 
    lines = text.splitlines() 
    count = 0 
    for line in lines: 
        if line and line[0].isdigit(): 
            count += 1 
    return count