python3判斷IP地址的方法
本文實(shí)例為大家分享了python3判斷IP地址的具體代碼,供大家參考,具體內(nèi)容如下
輸入一串字符,判斷該字符串是否為點(diǎn)分十進(jìn)制的IP地址,若是則轉(zhuǎn)換為16進(jìn)制輸出,否則輸出“Error”
注意:輸入可能是任意的一個(gè)字符串,比如“abc.bas.fefe.4r4”或者“23.23.11.23.123”
這都是不合法的IP地址
例如
輸入:192.41.6.20
輸出:0xC0290614
輸入:257.32.23.1
輸出:Error
解1
import re
def isIP(str):
p = re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$')
if p.match(str):
return True
# else:
# return False
myStr = input()
if isIP(myStr):
print(IP(myStr).strHex().upper())
# ip = list(map(int, myStr.split('.')))
# print('0x', end='')
# for i in ip:
# print(hex(i)[2:].upper().rjust(2, '0'), end='')
else:
print('Error')
解2:
def change(lis):
if len(lis)!=4:
return 'Error'
try: # 判斷字符串是否存在非數(shù)字
lis=[int(i) for i in lis]
except:
return 'Error'
for i in lis:
if i<0 or i>255: # 判斷ip地址是否合法
return 'Error'
temp='0x' #記錄16進(jìn)制數(shù)
for i in lis:
a=hex(int(i))[2:].upper().rjust(2,'0') #轉(zhuǎn)換為16進(jìn)制
# if len(a)!=2:
# a='0'+a
temp+=a
return temp
s=list(map(str,input().split('.')))
print(change(s))
解3
l = input().split(".")
if len(l) != 4:
print("Error")
else:
s = ""
for i in l:
try:
num = int(i)
if num > 255 or num < 0:
print("Error")
s = ""
break
else:
s += hex(num)[2:].upper().rjust(2, "0")
except ValueError:
print("Error")
s = ""
break
if s:
print("0x" + s)
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 用python查找統(tǒng)一局域網(wǎng)下ip對(duì)應(yīng)的mac地址
- Python3獲取電腦IP、主機(jī)名、Mac地址的方法示例
- python獲取本機(jī)mac地址和ip地址的方法
- python生成隨機(jī)mac地址的方法
- Python生成隨機(jī)MAC地址
- python通過scapy獲取局域網(wǎng)所有主機(jī)mac地址示例
- python IP地址轉(zhuǎn)整數(shù)
- python 輸入字符串生成所有有效的IP地址(LeetCode 93號(hào)題)
- 基于python實(shí)現(xiàn)查詢ip地址來源
- python如何判斷IP地址合法性
- Python中IP地址處理IPy模塊的方法
- 如何用Python獲取計(jì)算機(jī)名,ip地址,mac地址
相關(guān)文章
Python 使用 PyQt5 開發(fā)的關(guān)機(jī)小工具分享
這篇文章主要介紹了Python 使用 PyQt5 開發(fā)的關(guān)機(jī)小工具分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07
python 利用百度API進(jìn)行淘寶評(píng)論關(guān)鍵詞提取
這篇文章主要介紹了python 利用百度API進(jìn)行淘寶評(píng)論關(guān)鍵詞提取,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03
python操作xlsx文件的包openpyxl實(shí)例
下面小編就為大家分享一篇python操作xlsx文件的包openpyxl實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05
Python實(shí)現(xiàn)繪制多種激活函數(shù)曲線詳解
所謂激活函數(shù)(Activation?Function),就是在人工神經(jīng)網(wǎng)絡(luò)的神經(jīng)元上運(yùn)行的函數(shù),負(fù)責(zé)將神經(jīng)元的輸入映射到輸出端。這篇文章主要介紹了Python如何實(shí)現(xiàn)繪制多種激活函數(shù)曲線,希望對(duì)大家有所幫助2023-04-04
Python實(shí)現(xiàn)類的創(chuàng)建與使用方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)類的創(chuàng)建與使用方法,結(jié)合簡單計(jì)算器功能實(shí)例分析了Python類的定義與使用方法,需要的朋友可以參考下2017-07-07

