字符串使用
1、格式化
格式化,数据和模板分离,代码的可读性强,同时方便修改模板或数据,还方便代码的选择复制。
在项目开发中,如果是极少数或没有模板字符串的场景,可以考虑使用+操作符。而其它多用格式化语法。
- 虽然格式化提供了%s,%d等语法,可以将不同数据类型转为str类型。但使用较多的就是str类型和int类型、float类型,一般是只使用%s,对数据直接str(xx)强转。
string = '%s中第%s组参数,第%s组payload测试时,存在xx漏洞' % (...)
2、字符串拼接
如果多个字符串之间,使用分隔符进行拼接。理想的写法如下:
def list_to_str(list_obj:list, separator:str='\n'):
string = ''
if len(list_obj)>0:
string = list_obj[0]
for i in range(1, len(list_obj)):
string = string + separator + list_obj[i]
return string
探讨:
循环读取,追加元素+分隔符
- 结束循环后,需要去除掉多余的分隔符
string = string[:-len(separator)]
- 需要注意如果本身为空集合,strign为空字符串,那么执行去除动作,虽然不会导致异常。但是最好额外判断是否为空集合或者空字符串
3、技巧
如果对象是list[int]类型,想要快速获取其字符串格式。可以
string = str(list_obj)[1: -1]
4、常用方法
startswith(self, prefix, start=None, end=None)
count(self, sub, start=None, end=None)
lower(self, *args, **kwargs)
upper(self, *args, **kwargs)
strip(self, *args, **kwargs)
replace(self, *args, **kwargs)
index(self, sub, start=None, end=None)
encode(self, *args, **kwargs)
判断
isdigit(self, *args, **kwargs)
- 如果只包含0-9,即使以0开头,返回True。否则返回False
isalnum(self, *args, **kwargs)
- 如果只包含字母或数字0-9,返回True。否则返回False
isalpha(self, *args, **kwargs)
- 如果只包含字母,返回True。否则返回False
isnumeric(self, *args, **kwargs)
- 如果只包含0-9,即使以0开头,返回True。否则返回False
isdecimal(self, *args, **kwargs)
- 如果只包含0-9,即使以0开头,返回True。否则返回False