Python实现字符串按8位长度截断并补零输出的方法

沈知远
沈知远
发布时间:2026-10-13 | 5人浏览过
原创

本文介绍了一种Python实现方法,用于将输入的字符串按固定长度8进行拆分。若字符串长度不是8的倍数,则在末尾补数字0直至满足倍数要求。文章提供了完整代码示例及针对正常输入和空值输入的测试结果,旨在帮助开发者掌握字符串批量处理与格式化的基础技巧。

这是一个简单的编程练习,关键在于全面考虑各种可能的输入情况。以下是具体的实现代码:

#!usr/bin/env python
#encoding:utf-8
 
'''
__Author__:沂水寒城
功能:•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; 
   •长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
'''
 
def func_test():
  '''
  补足固定长度倍数输出
  '''
  a=raw_input()
  b=raw_input()
  len_a=len(a)
  len_b=len(b)
  a_list=[]
  b_list=[]
  if a == '':
    print a
  if b == '':
    print b
  else:
    if len_a==8:
      print a
    if len_b==8:
      print b
    if len_a!=8:
      if len_a<8:
        a+='0'*(8-len_a)
        a_list.append(a)
      else:
        need_a=8-len_a%8
        a+='0'*need_a
        len_a=len(a)
        for i in range(0,len_a,8):
          a_list.append(a[i:i+8])  
    for one in a_list:
      print one    
    if len_b!=8:
      if len_b<8:
        b+='0'*(8-len_b)
        b_list.append(b)
      else:
        need_b=8-len_b%8
        b+='0'*need_b
        len_b=len(b)
        for i in range(0,len_b,8):
          b_list.append(b[i:i+8])  
    for two in b_list:
      print two    
      
 
if __name__ == '__main__':
  func_test()

程序运行后的输出结果如下所示:

'''
***********************正常的处理情况*****************************
urivthvtlqqerctlxmjvkgvfclaaduwmaadedpadanl
batkqdhjnrwtsmzidswdnenqpsblsszldyttytrgenaizwehntqiaaufble
urivthvt
lqqerctl
xmjvkgvf
claaduwm
aadedpad
anl00000
batkqdhj
nrwtsmzi
dswdnenq
psblsszl
dyttytrg
enaizweh
ntqiaauf
ble00000
***********************输入为空值的情况*****************************
 
'''

以上就是Python实现指定字符串按固定长度倍数截断并补零输出的完整方法,希望能为各位读者提供有价值的参考。欢迎大家继续支持本站获取更多技术内容。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表