#python如何实现平分字符串为n份,不能整除的从开头补齐
想要将一条序列平均分为n份 如果不能整除则从开头补齐
例如 str = ABCDEFGH 平分为3段
则str1 =ABC str2= DEF str3 = GHA
请教一下该如何实现,我想到的是通过判断整除来补齐,但是不知如何均分,求指点
#python如何实现平分字符串为n份,不能整除的从开头补齐
想要将一条序列平均分为n份 如果不能整除则从开头补齐
例如 str = ABCDEFGH 平分为3段
则str1 =ABC str2= DEF str3 = GHA
请教一下该如何实现,我想到的是通过判断整除来补齐,但是不知如何均分,求指点
下面是一个实现,供参考:
参考链接:
python取整的几种常见方式-向上取整、向下取整、四舍五入取整、int()取整、“//”整除取整_旋转小马的博客-CSDN博客_python 向上取整
Python字符串截取方式_luckjump的博客-CSDN博客_python 字符串截取
import math
str = "ABCDEFGH"
oristr = "ABCDEFGH" #用于当均分时,作为str的备份进行复制拼接操作
result=[]
n = int(input("请输入要平分字符串为多少份:"))
#https://blog.csdn.net/u014543416/article/details/120773898
length = int(math.ceil(len(str)/n)) #每份均分字符串的长度
i = 0
start = 0
end = length
while i< n: #均分n次字符串,如果没有超过次数则一直进行均分字符串操作,直到完成n次菊粉
#https://blog.csdn.net/luckjump/article/details/119251647
if end > len(str): #如果均分字符串超过了str字符串的尾部,则再拼接一个str字符串备份,以从开开始均分
str+=oristr
tstr =str[start:end] #均分字符串str一份
#print("start=",start,",end=",end,"tsrt=",tstr)
result.append(tstr) #把这一份字符串存入result列表中
#重置均分字符串的起始位置和结束位置,开始下一轮均分字符串操作
start = end
end = start+length
# print("result=",result)
i+=1 #均分次数+1
print("result=",result)