在python中拆分字符串后,按索引插入值不起作用

2024-09-27 21:26:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在拆分字符串后插入一个新索引,但它不产生任何值。有人能帮忙吗

#splitting of string
str = "my name is anant raj rathore"

var = (str.split(" "))

print(var)

# Fetching value from the split string
print(var[1])

# inserting in list--------here is the problem the result is none .
print(var.insert(3, 'sir'))

我知道我犯了一些错误,但不知道确切的问题


Tags: ofthe字符串namestringisvarmy
2条回答

insert()方法将对象obj插入偏移索引处的列表中不返回任何值,但在给定索引处插入给定元素

print(var.insert(3, 'sir')) #None

所以,在调用insert后打印

var.insert(3, 'sir')
print(var) #['my', 'name', 'is', 'sir', 'anant', 'raj', 'rathore']

这里有几件事需要解决。首先,不要将变量命名为list, tuple, str, int, float等。第二个拆分,默认情况下,如果将其留空,将在处拆分

您的主要问题是var.insert()不会返回任何内容。它只是修改了一个iterable。因此,将其存储在变量中也不会有任何好处。只要保持var.insert()简单明了就行了

strEx = "my name is anant raj rathore"

var = strEx.split()
print(var)
# Fetching value from the split string
print(var[1])

# inserting in list    here is the problem the result is none .
var.insert(3, 'sir')

请允许我举一个例子。 假设我们有一个函数,它在列表的末尾添加了一个字符

example = ['a','b']
def add_to_end(li,cha):
    li.append(cha)
add_to_end(example,'c')

在这里,它没有返回语句。它通过使用append修改了example。 如果我们像这样打印示例

example = ['a','b']
def add_to_end(li,cha):
    li.append(cha)
add_to_end(example,'c')
print(example)

我们得到了正确的输出,没有None

['a', 'b', 'c']

但是假设我们打印了函数,即使它没有返回

example = ['a','b']
def add_to_end(li,cha):
    li.append(cha)
print(add_to_end(example,'c'))

我们得到None。 另一个选项是将其存储在变量example

example = ['a','b']
def add_to_end(li,cha):
    li.append(cha)
example = add_to_end(example,'c')
print(example)

我们再次得到None

相关问题 更多 >

    热门问题