19届华为实习生笔试之判断iPv6地址类型

Posted SingSingaSong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了19届华为实习生笔试之判断iPv6地址类型相关的知识,希望对你有一定的参考价值。

题二:

技术分享图片
技术分享图片
技术分享图片

答案:

#coding=utf-8
import re,sys
str = sys.stdin.readline().strip()
def regex(str):
    result = ""
    if re.sub(r‘^::/128$|^([0]{4}:){7}[0]{4}$‘, r‘Unspecified‘, str) == ‘Unspecified‘:
        result = ‘Unspecified‘
    elif re.sub(r‘^::1/128$|^([0]{4}:){7}[0]{3}1$‘, r‘Loopback‘, str) == ‘Loopback‘:
        result =‘Loopback‘
    elif re.sub(r‘^FE80::/10$|^FE[8AB]{1}[0-9A-F]{1}(:[0-9A-F]{4}){6}:[0-9A-F]{4}$‘, r‘LinkLocal‘,str) == ‘LinkLocal‘:
        result = ‘LinkLocal‘
    elif re.sub(r‘^FEC0::/10$|^FE[CDEF]{1}[0-9A-F]{1}(:[0-9A-F]{4}){6}:[0-9A-F]{4}$‘, r‘SiteLocal‘,str) == ‘SiteLocal‘:
        result = ‘SiteLocal‘
    elif re.sub(r‘^FF00::/10$|^FF[0-9A-F]{2}(:[0-9A-F]{4}){6}:[0-9A-F]{4}$‘, r‘Multicast‘, str) == ‘Multicast‘:
        result = ‘Multicast‘
    elif re.sub(r‘^([0-9A-F]{4}:){7}[0-9A-F]{4}$‘, r‘Globalcast‘, str) == ‘Globalcast‘:
        result = ‘Globalcast‘
    else:
        result = ‘Error‘
    print(result)

regex(str)

上面这个写法,用输入流进行输入、输出,因为牛客网对输入输出有要求。

然后在终端运行文件(用了sys.stdin的输入流,只能通过命令行来执行):

1.在命令行中打开父文件夹
2.`python 文件名.py ` 运行pthon文件
3.输入参数(本例子的参数是字符串)

技术分享图片

以下是python输入输出说明的样例:

技术分享图片
技术分享图片
技术分享图片





以上是关于19届华为实习生笔试之判断iPv6地址类型的主要内容,如果未能解决你的问题,请参考以下文章

(海康内推码)海康威视2022届春招2023届超星实习生

(海康内推码)海康威视2022届春招2023届超星实习生

华为2017实习生上机笔试_当出差遇上大雾_Java编程

头条2020届实习生笔试题

判断IPv6地址合法性

2020 春招 华为笔试 2月26日