繁体   English   中英

使用 splitlines 和 Split 获取单词的行

[英]Get word's line by using splitlines and Split

我想根据用户输入的文本获取在哪一行中的单词。

这是代码示例:

numLine =0

text = "How do you do? Am i \nsuppose to go somewhere?\nHere is the line i 
        don't know"

splittext= text.splitlines()
for i in splittext:
    numLine += 1
    if 'suppose' in i.split():
        print(str(numLine)+": "+i )

插入文本并获取字行后,

for i in splittext:
       numLine += 1

之后,如果它与 splittext 中的“假设”单词匹配,我会尝试再次拆分

        if 'suppose' in i.split():
        print(str(numLine)+": "+i )

打印的结果假设给

2:假设 go 某处?

但是终端不显示打印。 我该如何解决这个问题?

这是一种更 Pythonic 的方式来解决您的问题。

text = "How do you do? Am i \nsuppose to go somewhere?\nHere is the line i don't know"

for index, line in enumerate(text.splitlines()):
    if 'suppose' in line.split():
        print('{}: {}'.format(index + 1, line))

解释:

  • 如果您只使用一次,请避免创建额外的变量,例如splittext
  • 当您想遍历列表并使用计数器执行某些操作时,请使用enumerate()
  • 使用字符串格式而不是连接来很好地打印内容。

你的意思是text2.splitlines()而不是text.splitlines()吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM