U418178 Python

题目背景

`Python`有一个`str`类型, 如: ```Python s = "13+" print(s) s += "999-9" print(s) print(s.find("9")) ````````` 这样。

题目描述

请使用`C++`来实现`Python`的`str`类型, 需要实现的函数或方法有: #### $\hspace{0.25cm}$0个参数: | 函数名 | 作用 | | :----------- | :----------- | |isupper |判断是否都为大写 | |islower |判断是否都为小写 | |isalpha |判断是否都为字母 | |isalnum |判断是否为数字or字母 | |isdigit |判断是否都为数字 | |capitalize |把第一个字母大写,其余小写 | |len |求字符串的长度 | |upper |转为大写 | |lower |转为小写 | #### $\hspace{0.25cm}$1个参数: |函数名|作用| |---|---| |+= $S$ |拼接字符串$S$ | |+ $S$ |拼接字符串$S$(不会改变)| |print |输出 | |count $S$ |统计$S$的个数 | |find $S$ |查找$S$的下标 | |index $S$ |查找$S$的下标 | #### $\hspace{0.25cm}$2个参数: |函数名|作用| |---|---| |[a:b] |截取子串(a, b),左闭右开|

输入格式

第一行输入一个字符串, \ 第二行一个整数$N$。\ 接下来$N$行, 输入$op_i, x_i, y_i$, $op_i$表示函数名, \ 有返回值则输出。\ (若$op_i$不需要$2$个参数, 则输入时会缺少部分参数)\ $\colorbox{darkblue}{\color{skyblue}\underline{\color{red}保\color{orange}证\color{yellow}每\color{green}一\color{lightblue}个\color{blue}op\color{lightblue}在\color{wheat}上\color{grey}面\color{gold}出{\color{darkgoldenrod}现}过}}$ $\colorbox{darkblue}{\color{skyblue}\underline{\color{red}保\color{orange}证\color{yellow}每\color{green}一\color{lightblue}个\color{blue}字\color{lightblue}符\color{wheat}串\color{grey}无\color{gold}空\color{darkgoldenrod}格}}$ $\colorbox{darkblue}{\color{skyblue}\underline{\color{red}保\color{orange}证\color{yellow}p\color{green}r\color{lightblue}i\color{blue}n\color{lightblue}t\color{wheat}后\color{grey}面\color{gold}为\color{darkgoldenrod}S}}$

输出格式

---------------------------看上面---------------------------

说明/提示

**若`index`报错则输出`ValueError: substring not found`**\ **`index` `count` `find`保证参数为长度为$1$的字符串**\ **若$op$为`[:]`则保证`S[x]`比`S[y]`靠前**\ **`upper` `lower` `capitalize` `[:]`在本题中会改变原串**\ $5\le N\le100$