Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python2.7分裂混乱_Python_Python 2.7_Split - Fatal编程技术网

Python2.7分裂混乱

Python2.7分裂混乱,python,python-2.7,split,Python,Python 2.7,Split,我正在尝试编写一个函数,该函数将列表作为参数,并从输入列表的每个成员中删除新行“\n”字符 方法1: def remove_newline_list (lst): for i in (range(len(lst))): lst[i] = lst[i].split()[0] print lst 印刷品: ['orcl','orcl112'] 方法2: def remove_newline_list (lst): for i in (

我正在尝试编写一个函数,该函数将列表作为参数,并从输入列表的每个成员中删除新行“\n”字符

方法1:

def remove_newline_list (lst):
        for i in (range(len(lst))):
                lst[i] = lst[i].split()[0]
print lst
印刷品:

['orcl','orcl112']

方法2:

def remove_newline_list (lst):
        for i in (range(len(lst))):
                lst[i] = lst[i].split('\n')[0]

print lst
印刷品:

['o','r','c','l','o','r','c','l','1','1','2']

有人能解释一下如何使用第二种方法在“\n”处显式拆分文本吗


i、 e.我想明确指定“\n”字符作为分隔符,这样它就不会在其他空白处分裂,只需创建一个新列表:

lst = ['a\n', 'b', 'c\n']
new_lst = [item.rstrip() for item in lst]
或-使用
映射

new_lst = list(map(str.rstrip, lst))
两者都会让步

['a', 'b', 'c']
这会奏效的 您可以遍历eanch元素并去除结束字符,在本例中为新行(
\n
)并分配回该索引


lst = ['a\n', 'b', 'c\n']

for index, char in enumerate(lst):
  lst[index] = char.strip('\n')
print(lst)

谢谢。但是你能解释一下为什么Python在方法2中的行为方式对我来说很好。你想分享你在第二种方法中传递给函数的输入吗?穆罕默德·乌斯曼·巴希尔,很抱歉回复晚了。该列表包含Oracle SID值,即orcl,orcl112@JK正如我前面提到的,第二个代码对我来说工作得很好。一定有什么问题。向函数发送输入时。您必须检查向函数传递输入的方式。非常感谢。但是,你能解释一下为什么Python在方法库中的行为如此频繁吗。但是你能解释一下为什么Python在方法2中的行为方式吗
def remove_newline_list (lst):

  temp_list = []

  for item in lst:
    temp_list.append(item.strip('\n'))

  return temp_list



mylist = [ 'jane\n' , 'doe\n' , 'richard\n' , 'stallman\n']

print(mylist)

print(remove_newline_list(mylist))



['jane\n', 'doe\n', 'richard\n', 'stallman\n']
['jane', 'doe', 'richard', 'stallman']