按照要求实现串的基本操作,程序界面如下所示:1.求字符串的长度 2.从主串中取一个子串 3.比较两个字符串的大小 4.比较一个子串在主串中的位置 5.将两个子串连接成一个新的字符串 0.退出系统
时间: 2024-03-07 15:48:14 浏览: 46
好的,我可以为您实现这个程序。以下是代码:
```python
class String:
def __init__(self, s):
self.str = s
def length(self):
return len(self.str)
def substring(self, start, end):
return self.str[start:end]
def compare(self, s):
if self.str == s.str:
return 0
elif self.str < s.str:
return -1
else:
return 1
def find(self, s):
index = self.str.find(s.str)
if index == -1:
return "Substring not found"
else:
return index
def concat(self, s):
return self.str + s.str
while True:
print("请选择以下操作:")
print("1.求字符串的长度")
print("2.从主串中取一个子串")
print("3.比较两个字符串的大小")
print("4.比较一个子串在主串中的位置")
print("5.将两个子串连接成一个新的字符串")
print("0.退出系统")
choice = input("请输入操作编号:")
if choice == "1":
s = input("请输入字符串:")
string = String(s)
print("字符串长度为:", string.length())
elif choice == "2":
s = input("请输入字符串:")
string = String(s)
start = int(input("请输入子串起始位置:"))
end = int(input("请输入子串结束位置:"))
print("子串为:", string.substring(start, end))
elif choice == "3":
s1 = input("请输入第一个字符串:")
string1 = String(s1)
s2 = input("请输入第二个字符串:")
string2 = String(s2)
result = string1.compare(string2)
if result == 0:
print("两个字符串相等")
elif result == -1:
print("第一个字符串小于第二个字符串")
else:
print("第一个字符串大于第二个字符串")
elif choice == "4":
s = input("请输入主串:")
string = String(s)
s = input("请输入子串:")
substring = String(s)
print("子串在主串中的位置:", string.find(substring))
elif choice == "5":
s1 = input("请输入第一个子串:")
string1 = String(s1)
s2 = input("请输入第二个子串:")
string2 = String(s2)
print("新字符串为:", string1.concat(string2))
elif choice == "0":
break
else:
print("输入错误,请重新输入")
```
运行程序后,就会出现操作界面。您可以根据需要选择操作,程序会根据您的选择进行相应的操作。
阅读全文