Python中strip()函数的用法

时间:2018-08-01 15:01:58

标签: python python-2.7

我有一些用Python编写的脚本,在该脚本中被提及:

hostNumber = hostNumber.strip("0")

,当我们将hostNumber设为'c0001230'时,它会删除脚本中的所有零。 但是我们希望它删除开头的零并返回hostNumber的后4位。

3 个答案:

答案 0 :(得分:0)

strip()函数删除所有前导和尾随字符。在这种情况下:

hostnumber = "c0001230"
hostnumber = hostnumber.strip("0")
print(hostnumber)
"c000123"

是否打算使用“ c”字符?根据您的问题,您想要的输出是0123,对吗?我建议采用的方法是:

hostnumber = "c0001230"
hostnumber = hostnumber.strip("0")
hostnumber = hostnumber[-4:]
print(hostnumber)
"0123"

如果此答案还有其他问题,请随时提问。

答案 1 :(得分:0)

要解决对strip()的使用,在字符串以字母开头的情况下,您会遇到问题。您最好通过正则表达式(regex)指定特定的模式。这是一个正则表达式,可以满足您的要求,以及更多示例案例:

r'[1-9][0-9]+$'

这会寻找1-9之间的数字,然后是0-9之前的一个或多个数字,直到字符串的结尾(以$表示)。

import re

s = ['c0001230','f0000546','y0098061','h0064125','a0000030']

outputs = [re.findall(r'[1-9][0-9]+$', i)[0] for i in s]

收益:

['1230', '546', '98061', '64125', '30']

请参见here进行测试。

答案 2 :(得分:0)

您可以使用python的re模块:

if (identical(df, df1))

当然,您可以删除为清晰起见添加的几行。

假设您拥有由CHAR + INT组成的hostNumber。如果您需要删除结尾的0(即将1230转换为123,请在末尾添加<Directory /var/www/html> AllowOverride all </Directory>