Python 如果行中的字符串以特定字符结尾,则打印该字符串

Python 如果行中的字符串以特定字符结尾,则打印该字符串,python,string,file,character,line,Python,String,File,Character,Line,如何打印一行中以“je”结尾的每个字符串 例如: for line in sys.stdin: for string in line: if string ends with 'je': print string 而且只有当字符串以“……je”结尾时,才包括“je”。如果字符串以“..je?”或“..je.”结尾,则删除“?”。然后它应该打印字符串。非常感谢您的帮助。假设您的字符串名不允许使用“?,”,它应该可以工作 for line in sy

如何打印一行中以“je”结尾的每个字符串

例如:

for line in sys.stdin:
    for string in line:
        if string ends with 'je':
            print string

而且只有当字符串以“……je”结尾时,才包括“je”。如果字符串以“..je?”或“..je.”结尾,则删除“?”。然后它应该打印字符串。非常感谢您的帮助。

假设您的字符串名不允许使用“?,”,它应该可以工作

for line in sys.stdin:
    for string in line:
        string = string.strip('.,?')
        if string.endswith('je'):
            print(string)

代码中有两个问题<代码>对于第行中的字符串:将遍历每个字符,而不是每个单词。顺便说一下,您不应该将变量命名为
string
<代码>用于行中的单词。split():将按您的期望执行

另外,
如果字符串以'je'结尾:
应该是
如果word.endswith('je'):
。如果您不想匹配确切的单词“je”,可以将其更改为
If word.endswith('je')和word!=“je”:

最终代码,包括删除

f = open("a.txt", "r")

for line in f:
    for word in line.split():
        word = word.rstrip("!?")
        if word.endswith('je') and word != "je":
            print(word)

请注意,如果一个单词以几个
结尾,它们都将被删除。

什么是“一行中的每个字符串”?Dat huisje daar。这是布姆普杰·达尔。伊恩·赖斯·希尔。打印:huisje/boompje/Reijeso,一行中的每个单词?是的,我已经让它工作了,但它也包括“je”有办法删除“je”吗?我只想要一个有“……je”而不是“je”的。我编辑了我的代码。它现在还删除了
&
来自字符串。