目录

python

import ipaddress import math import geohash def ip_address_query(): IP地址输入方式 ip_address = input("Enter IP地址或转换格式:\n1. 1进制\n2. 16进制\n3. 二进制\n4. 八进制\n5. 显式(如192.168.1.1)\n6. 隐式(如192.168.1.1.)\n7. 千分位数(如1、2)\n8. 千分位数范围(如1-2、1-2k)\n9. 地图显示\n1. 列表显示\n11. 验证\n12. 频率 ip_address = ip_address.strip() # 转换功能 def convert_to(): if ip_address == '1进制': ip = int(ip_address) try: converted = ipaddress.ip_to_string(ip) print(f"十六进制:{converted.digiting().hex()}") print(f"二进制:{converted.digiting().bin()}") print(f"八进制:{converted.digiting().oct()}") except ValueError: print(f"无效 IP地址:{ip}") elif ip_address == '16进制': ip = int(ip_address, 16) try: converted = ipaddress.ip_to_string(ip) print(f"十六进制:{converted.digiting().hex()}") print(f"二进制:{converted.digiting().bin()}") print(f"八进制:{converted.digiting().oct()}") ex...

import ipaddress import math import geohash

def ip_address_query():

IP地址输入方式

ip_address = input("Enter IP地址或转换格式:\n1. 1进制\n2. 16进制\n3. 二进制\n4. 八进制\n5. 显式(如192.168.1.1)\n6. 隐式(如192.168.1.1.)\n7. 千分位数(如1、2)\n8. 千分位数范围(如1-2、1-2k)\n9. 地图显示\n1. 列表显示\n11. 验证\n12. 频率
ip_address = ip_address.strip()
# 转换功能
def convert_to():
    if ip_address == '1进制':
        ip = int(ip_address)
        try:
            converted = ipaddress.ip_to_string(ip)
            print(f"十六进制:{converted.digiting().hex()}")
            print(f"二进制:{converted.digiting().bin()}")
            print(f"八进制:{converted.digiting().oct()}")
        except ValueError:
            print(f"无效 IP地址:{ip}")
    elif ip_address == '16进制':
        ip = int(ip_address, 16)
        try:
            converted = ipaddress.ip_to_string(ip)
            print(f"十六进制:{converted.digiting().hex()}")
            print(f"二进制:{converted.digiting().bin()}")
            print(f"八进制:{converted.digiting().oct()}")
        except ValueError:
            print(f"无效 IP地址:{ip}")
    elif ip_address == '二进制':
        binary = ip
        try:
            ip = ipaddress.ip_to_string(binary)
            print(f"十六进制:{ip.digiting().hex()}")
            print(f"二进制:{ip.digiting().bin()}")
            print(f"八进制:{ip.digiting().oct()}")
        except ValueError:
            print(f"无效 IP地址:{binary}")
    elif ip_address == '八进制':
        octal = ip
        try:
            ip = ipaddress.ip_to_string(octal)
            print(f"十六进制:{ip.digiting().hex()}")
            print(f"二进制:{ip.digiting().bin()}")
            print(f"八进制:{ip.digiting().oct()}")
        except ValueError:
            print(f"无效 IP地址:{octal}")
def validate():
    ip = ip_address
    try:
        ipaddress.ip_to_string(ip)
        print("有效 IP地址!")
    except ValueError:
        print(f"无效 IP地址:{ip}")
def list_search(ip_address, sort_by, filter_type, limit):
    if ip_address == '1进制':
        ip = int(ip_address)
    elif ip_address == '16进制':
        ip = int(ip_address, 16)
    elif ip_address == '二进制':
        ip = int(ip_address, 2)
    elif ip_address == '八进制':
        ip = int(ip_address, 8)
    # 转换为十六进制、二进制、八进制
    def ip_to_sixteen():
        try:
            ip = int(ip_address)
            ipaddress.ip_to_string(ip)
            return ip.digiting().hex()
        except ValueError:
            return None
    def ip_to_binary():
        try:
            ip = int(ip_address)
            ipaddress.ip_to_string(ip)
            return ip.digiting().bin()
        except ValueError:
            return None
    def ip_to_oct():
        try:
            ip = int(ip_address)
            ipaddress.ip_to_string(ip)
            return ip.digiting().oct()
        except ValueError:
            return None
    try:
        converted = ip_to_sixteen()
        print(f"十六进制:{converted}")
        print(f"二进制:{ip_to_binary()}")
        print(f"八进制:{ip_to_oct()}")
    except Exception as e:
        print(f"转换失败:{e}")
def range_search():
    if ip_address == '1进制':
        start = int(ip_address)
        end = int(ip_address)
    elif ip_address == '16进制':
        start = int(ip_address, 16)
        end = int(ip_address, 16)
    elif ip_address == '二进制':
        start = int(ip_address, 2)
        end = int(ip_address, 2)
    elif ip_address == '八进制':
        start = int(ip_address, 8)
        end = int(ip_address, 8)
    start = max(start, 0)
    end = min(end, 2**32 - 1)
    print(f"有效范围:{start}-{end}")
def sort_by():
    if ip_address == '1进制':
        return 'decimal'
    elif ip_address == '16进制':
        return 'hex'
    elif ip_address == '二进制':
        return 'binary'
    elif ip_address == '八进制':
        return 'oct'
def filter_type():
    if ip_address == '1进制':
        return 'decimal'
    elif ip_address == '16进制':
        return 'hex'
    elif ip_address == '二进制':
        return 'binary'
    elif ip_address == '八进制':
        return 'oct'
def frequency():
    return None
def geohash_display():
    try:
        ip = ip_address
        if ipaddress.IPv4Address(ip):
            g = ipaddress.IPv4Address(ip).geohash()
            print(f"IP地址在地球上的位置:{g}")
        else:
            print(f"无效 IP地址:{ip}")
    except ValueError:
        print(f"无效 IP地址:{ip}")
def get_frequency():
    try:
        ip = ip_address
        ipaddress.IPv4Address(ip)
        count = 0
        for x in range(, 1):
            ip = ipaddress.IPv4Address(f'1.1.1.{x}')
            count += 1
        print(f"有效率:{count/1}")
    except ValueError:
        print(f"无效 IP地址:{ip}")
def lookup():
    try:
        ip_address = input("Enter IP地址或转换格式:\n1. 1进制\n2. 16进制\n3. 二进制\n4. 八进制\n5. 显式\n6. 隐式\n7. 千分位数\n8. 千分位数范围\n9. 地图显示\n1. 列表显示\n11. 验证\n12. 频率\n13. 频率地图\n14. 频率分布')
        if ip_address == '1进制':
            ip = int(ip_address)
            try:
                ipaddress.IPv4Address(ip)
                print(f"有效 IP地址:{ip}")
            except ValueError:
                print(f"无效 IP地址:{ip}")
        elif ip_address == '16进制':
            ip = int(ip_address, 16)
            try:
                ipaddress.IPv4Address(ip)
                print(f"有效 IP地址:{ip}")
            except ValueError:
                print(f"无效 IP地址:{ip}")
        elif ip_address == '二进制':
            binary = ip
            try:
                ipaddress.IPv4Address(binary)
                print(f"有效 IP地址:{binary}")
            except ValueError:
                print(f"无效 IP地址:{binary}")
        elif ip_address == '八进制':
            octal = ip
            try:
                ipaddress.IPv4Address(octal)
                print(f"有效 IP地址:{octal}")
            except ValueError:
                print(f"无效 IP地址:{octal}")
        elif ip_address == '显式':
            ip = int(ip_address)
            try:
                ipaddress.IPv4Address(ip)
                print(f"有效 IP地址:{ip}")
            except ValueError:
                print(f"无效 IP地址:{ip}")
        elif ip_address == '隐式':
            ip = int(ip_address, 32)
            try:
                ipaddress.IPv4Address(ip)
                print(f"有效 IP地址:{ip}")
            except ValueError:
                print(f"无效 IP地址:{ip}")
        elif ip_address == '千分位数':
            start = int(input("请输入千分位数:"))
            print

python

扫描二维码推送至手机访问。

本文转载自互联网,如有侵权,联系删除。

本文链接:https://wap.xiyouapp.com.cn/post/12294.html

扫描二维码手机访问

文章目录
网站地图