Python 在字符串中执行IP反转
我正在编写代码,用于执行字符串的Python 在字符串中执行IP反转,python,regex,reverse,Python,Regex,Reverse,我正在编写代码,用于执行字符串的IP反转 我已经完成了如下代码: def reverse(ip): if len(ip) <= 1: return ip return reverse(ip[1:]) + ip[0] ip = '10.1.2.3' print reverse(ip) 3.2.1.01 3.2.1.10 预期输出:相反,我需要的结果应显示如下: def reverse(ip): if le
IP反转
我已经完成了如下代码:
def reverse(ip):
if len(ip) <= 1:
return ip
return reverse(ip[1:]) + ip[0]
ip = '10.1.2.3'
print reverse(ip)
3.2.1.01
3.2.1.10
预期输出:相反,我需要的结果应显示如下:
def reverse(ip):
if len(ip) <= 1:
return ip
return reverse(ip[1:]) + ip[0]
ip = '10.1.2.3'
print reverse(ip)
3.2.1.01
3.2.1.10
请有人帮我解决这个问题。python坚持字符串是字符数组,这让你大吃一惊。把它们转换成数字,然后把它们颠倒过来怎么样
>>> numbers = [int(v) for v in ip.split('.')]
>>> numbers.reverse()
>>> ip_reversed = '.'.join([str(v) for v in numbers])
>>> ip_reversed
'3.2.1.10'
您可以尝试以下方法:
def reverse(ip):
if len(ip) <= 1:
return ip
l = ip.split('.')
return '.'.join(l[::-1])
ip = '10.1.2.3'
print reverse(ip)
你可以这样试试
>>> '.'.join(ip.split('.')[::-1])
'3.2.1.10'
在功能上:
def reverse(ip):
if len(ip) <= 1:
return ip
return '.'.join(ip.split('.')[::-1])
def倒档(ip):
如果len(ip)在点上分割,则反转列表并加入。如上所述,返回'。.join(ip.split('.)[:-1])
或只是返回re.sub(r“^(\d+)\(\d+)\(\d+)(\d+),(\d+)”,r“\4.\3.\2.\1”,ip)
。很好,感谢您的响应,感谢您不使用的任何原因:)哦,太好了,我总是忘了切片反转!干得好。