首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >面试题-python3 连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组

面试题-python3 连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组

作者头像
上海-悠悠
发布2021-04-26 09:56:58
发布2021-04-26 09:56:58
3.4K0
举报

题目

连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; 长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。 输入描述: 连续输入字符串(输入2次,每个字符串长度小于100) 举例: 输入:abc 123456789 输出: abc00000 12345678 90000000

实现代码

这题首先考察字符串的个数,分为小于8,等于8,大于8的情况,其中大于8的字符按每8个字符切割,最后的余数不足8个继续补齐。 输入要求:输入2次,每个字符串长度小于100。当大于100的时候,可以让用户重新输入,直到小于100

代码语言:javascript
复制
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/

b = ""
n = 2
while n:
    a = input("")
    if len(a) > 100:
        print("请输入字符小于100")
        continue
    else:
        if len(a) < 8:
            b += a+(8-len(a))*'0'+"\n"
        elif len(a) == 8:
            b += a+"\n"
        else:
            for i in range(len(a)//8):
                b += a[8*i:8*(i+1)]+"\n"
            # 判断是不是8 的整数倍,如果不是,取出后面的
            if len(a)%8 != 0:
                yu = a[8*(len(a)//8):]
                b += yu+(8-len(yu))*'0'+"\n"
        n -= 1
print(b)

运行效果

代码语言:javascript
复制
abc
123456789
abc00000
12345678
90000000

再次输入一个较长字符,运行效果

代码语言:javascript
复制
abc
123456789acccccccccccccccccccc
abc00000
12345678
9acccccc
cccccccc
cccccc00
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-04-16,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 题目
  • 实现代码
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档