Python parse int from string

前端 未结 2 1322
误落风尘
误落风尘 2021-01-07 03:33
test1 = \'name1\'
test2 = \'name2\'
..
test3 = \'name45\'
test4 = \'name1231231\'

Let\'s say I have bunch of strings which start with \'name\' and

2条回答
  •  醉话见心
    2021-01-07 04:02

    In Python 3, you could do the following:

    import string
    
    for test in ['name1', 'name2', 'name45', 'name1231231', '123test']:
        print(int(test.strip(string.ascii_letters)))
    

    Giving you:

    1
    2
    45
    1231231
    123
    

    string.ascii_letters gives you a string containing all upper and lowercase letters. Python's strip() function takes a string specifying the set of characters to be removed, which is this case is all alpha characters, thus leaving just the numbers behind.

    Note: This would not be suitable for a string such as 123name456.

提交回复
热议问题