python - 求解IP分割问题
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-05-18 10:45:55
[Python讨论组]

有这样的一段ip:"192.168.1.1-5,192.168.1.10-15"
想让他输出成:
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192.168.1.10
192.168.1.11
192.168.1.12
192.168.1.13
192.168.1.14
192.168.1.15
有什么好办法么?易语言中我可以用文本处理的方式实现,python还不是很熟,求大神来个思路。

曾经蜡笔没有小新
曾经蜡笔没有小新

全部回复(2)
PHPz
a = "192.168.1.1-5,192.168.1.10-15"

# 根据逗号分隔不同的ip, 结果是一个列表[192.168.1.1-5, 192.168.1.10-15]
for ip in a.split(','):
    # ip就是遍历刚才的列表取得值, 根据.从右到左分割一次ip字符串, 获取结果192.168.1和1-5, 分别存给两个变量
    shuffix, _ = ip.rsplit('.', 1)
    # 用-切分1-5, 得出一个范围区间
    start, end = map(int, _.split('-'))
    for num in range(start, end+1):
        # num为上述范围区间的数, 然后拼接一开始的字符串, 组成新ip
        print('{}.{}'.format(shuffix, num))
过去多啦不再A梦
# coding: utf-8

import os

str = '192.168.1.1-5,192.168.1.10-15'

for x in str.split(','):
    _, y = os.path.splitext(x)
    start, end = y.replace('.', '').split('-')
    for i in range(int(start), int(end) + 1):
        print '{}.{}'.format(_, i)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号