Python如何将字符串转为list后向list插入指定值
代码错误说明
你写的代码无法实现预期效果,核心问题有3个:
- 字符串转列表逻辑错误:
List=list[str]是Python的类型标注写法,不会执行实际的类型转换操作,正确的转换需要调用list()构造方法,把待转换的字符串作为参数传入 - 打印语句错误:
print(list)输出的是Python内置的list类本身,不是你创建的列表实例 - 运行异常+命名风险:由于
List被赋值为类型对象而非列表实例,调用List.insert()时会抛出属性错误;同时用Str、List作为变量名,和Python内置的str、list类型重名,容易触发意料之外的逻辑问题
正确实现方式
# 定义原始字符串 origin_str = "123ffb06789ff000000" # 执行字符串转列表:会将字符串的每个字符拆分为独立的列表元素 char_list = list(origin_str) print(char_list) # 在列表索引0的位置(即列表头部)插入指定值"ma" char_list.insert(0, "ma") print(char_list)
运行后输出结果:
['1', '2', '3', 'f', 'f', 'b', '0', '6', '7', '8', '9', 'f', 'f', '0', '0', '0', '0', '0', '0'] ['ma', '1', '2', '3', 'f', 'f', 'b', '0', '6', '7', '8', '9', 'f', 'f', '0', '0', '0', '0', '0', '0']
补充说明:如果你不需要把字符串拆分为单个字符,而是要把整个字符串作为列表的一个元素,初始化列表时直接写char_list = [origin_str]即可,后续插入值的逻辑不变。
内容的提问来源于stack exchange,提问作者user414487
相关产品推荐
相关产品推荐

