使用 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
中的 'suppose' 单词匹配,我会再次尝试拆分
if 'suppose' in i.split():
print(str(numLine)+": "+i )
打印结果假设为
2: suppose to go somewhere?
但是终端不显示打印。我该如何解决这个问题?
您是指 text2.splitlines()
而不是 text.splitlines()
吗?
这里有一个更 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()
- 使用字符串格式而不是串联来很好地打印内容。
我想根据用户输入的文本得到哪一行的单词
这是代码示例:
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
中的 'suppose' 单词匹配,我会再次尝试拆分 if 'suppose' in i.split():
print(str(numLine)+": "+i )
打印结果假设为
2: suppose to go somewhere?
但是终端不显示打印。我该如何解决这个问题?
您是指 text2.splitlines()
而不是 text.splitlines()
吗?
这里有一个更 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()
- 使用字符串格式而不是串联来很好地打印内容。