Python小程序实现

Python小程序实现

标签(空格分隔): python

1,16进制IP地址转换为10进制

[root@halo scripts]# cat ip_16_10.py 
#!/usr/bin/python3
# 2022-12-25
# 此脚本实现了将16进制IP地址转换为10进制的功能

while True:
    print('---' * 9)
    ip_10_list = []
    ip_16 = input('请输入待转换10进制的IP地址:\n格式: C0A8000A(大小写均可)\n>>>>: ')
    ip_10_list.append(int((ip_16[0] + ip_16[1]), 16))
    ip_10_list.append(int((ip_16[2] + ip_16[3]), 16))
    ip_10_list.append(int((ip_16[4] + ip_16[5]), 16))
    ip_10_list.append(int((ip_16[6] + ip_16[7]), 16))
    ip_10 = "{}.{}.{}.{}".format(*tuple(ip_10_list))
    print("结果: " + ip_10)
    print('---' * 9, end = '\n\n')
[root@halo scripts]# 
[root@halo scripts]# 
[root@halo scripts]# 

2,10进制IP地址转换为16进制

[root@halo scripts]# cat ip_10_16.py 
#!/usr/bin/python
# 2022-12-25
# 此脚本实现将10进制IP地址转换为16进制的功能

while True:
    print('---' * 9)
    ip = input('请输入待转换16进制的IP地址:\n格式: 192.168.0.100\n>>>>: ')
    ip_list = ip.split('.')
    ip_16 = []
    for i in ip_list:
        if int(i) > 15:
            ip_16.append("{0:X}".format(int(i)))
        else:
            ip_16.append("0{0:X}".format(int(i)))
    print("结果: " + (ip_16[0] + ip_16[1] + ip_16[2] + ip_16[3]))
    print('---' * 9, end = '\n\n')

3,16进制字符串转换为10进制

[root@halo scripts]# cat str_16_10.py 
#!/usr/bin/python3
# 2022-12-25
# 此脚本实现了将16进制字符串转换为10进制的功能

while True:
    print('---' * 9)
    str_16_list = []
    str_16 = ''
    aaa_16 = input('请输入待转换16进制的字符串:\n提示: 字符串长度必须是偶数个\n>>>>: ')
    for i in range(0, len(aaa_16), 2):
        x = int((aaa_16[i] + aaa_16[i+1]), 16)
        if x < 10:
            str_16_list.append( "0{}".format(str(int((aaa_16[i] + aaa_16[i+1]), 16))) )
        else:
            str_16_list.append(str(int((aaa_16[i] + aaa_16[i+1]), 16)))
    for s in str_16_list:
        str_16 += s
    print("结果: " + str_16)
    print('---' * 9, end = '\n\n')
posted @ 2022-12-26 00:19  yao-yuan-ge  阅读(147)  评论(0)    收藏  举报