串,我们通常说字符串,单个字符也是字符串,多个字符也可以组成字符串。所谓串的顺序存储,就是采用一组物理上连续的存储单元来存放串中所有字符。
实现代码如下:
class String:
def __init__(self):#初始化
self.MaxStringSize = 256
self.chars=""
self.length = 0
def IsEmptyString(self):#为空
if self.length == 0:
IsEmpty = True
else:
IsEmpty = False
return IsEmpty
def CreateString(self):#加入字符串
try:#加入异常处理
stringSH = str(input('请输入字符串,按回车键结束输入:'))
if len(stringSH)>self.MaxStringSize:
print('输入的字符序列超过分配的存储空间,超出部分无法存入当前串中。')
self.chars = stringSH[:self.MaxStringSize]
else:
self.chars = stringSH
except Exception:
print('输入错误,不是字符。')
def StringConnect(self,strSrc):
lengthSrc = strSrc.length
stringSrc = strSrc.chars
if lengthSrc+len(self.chars)<=self.MaxStringSize:
self.chars = self.chars + stringSrc
else:
print('两个字符串连接后的长度超过分配内存,超出部分无法显示。')
size = self.MaxStringSize - len(self.chars)
self.chars = self.chars + stringSrc[0:size]
print('连接后的字符串为:',self.chars)
def SubString(self,iPos,length):
if iPos>len(self.chars)-1 or iPos < 0 or length < 1 or (length+iPos>len(self.chars)):
print('无法获取字符串。')
else:
substr = self.chars[iPos:iPos+length]
print('获取的字符为:',substr)
if __name__ == '__main__':#主函数,程序出口
S = String()
#S.StringConnect()
S.CreateString()
感谢大家前来观看鄙人的文章,文中或有诸多不妥之处,还望指出和海涵。