Python - 有一个具有相同变量的子循环

标签 python for-loop iteration substring

我想知道是否有办法在使用 for 循环遍历字符串时删除字符串的一部分并用它做其他事情。

基本上,我想以一个字符串“first portion|middle|,end”开始,以两个字符串结束。 “缓冲区”变量应包含“第一部分,结尾”,第二个字符串应包含“|中间|”

word = "first portion|middle|,end"
buffer = ''

for i in word:
    if i == '|':
        # Loop in here until another pipeline is found while saving each character
    else:
        buffer += i 

我已经有一个程序可以解析原始字符串并组织它,所以理想情况下我只想在 for 循环中有一个 if 语句,它将删除管道之间的任何内容并保存它。如果这不可能,我将重写程序以允许我也这样做。

最佳答案

你在找str.split()吗功能 ?

您可以将 PIPE 字符传递给它,它会在找到 | 的地方拆分字符串并返回拆分字符串列表。示例 -

>>> word = "first portion|middle|,end"
>>> word.split('|')
['first portion', 'middle', ',end']

然后,如果您确定总是只有三个元素,则获取第一个和第三个元素,并将它们连接起来作为您想要的第一个字符串结果,然后使用第二个元素作为第二个结果。示例 -

>>> word = "first portion|middle|,end"
>>> l = word.split('|')
>>> result1 = l[0] + l[2]
>>> result2 = l[1]
>>> result1
'first portion,end'
>>> result2
'middle'

关于Python - 有一个具有相同变量的子循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31873317/

相关文章:

python - 使用 Python 匹配 ArangoDb 中顶点上的数组中的属性

c++ - "for (const auto &s : strs) {} "是什么意思?

c++ - for_each 算法导致 basic_string::_M_construct null 在 C++ 中无效

python - 试图从 python 中的正则表达式匹配中打印一个组

python - 需要一个脚本来遍历文件并执行命令

python - 子类化 python unittest.Testcase,调用相同的 main

python - 在 Flask 中设置静态文件夹路径

python - urllib2.urlopen 为浏览器可以返回的页面返回 404

Java 迭代问题

perl - 迭代 Perl 哈希键的最安全方法是什么?