Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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
Python 比较两个字符串[字]_Python_String - Fatal编程技术网

Python 比较两个字符串[字]

Python 比较两个字符串[字],python,string,Python,String,我试图建立一个统计模型。在这两者之间,我陷入了以下情况: for pos_token in tokens: for pos_feature_word in pos_features: 这里,标记是输入句子的标记,词性特征是一个.txt文件 这里的pos\u token和pos\u feature\u word是单词(字符串)。我怎样才能匹配它们 比如:我的目标是得到这样的东西: if pos_token == pos_feature_word 信息:我正在尝试匹配完整的字符串(wor

我试图建立一个统计模型。在这两者之间,我陷入了以下情况:

for pos_token in tokens:
    for pos_feature_word in pos_features:
这里,标记是输入句子的标记,词性特征是一个.txt文件

这里的pos\u tokenpos\u feature\u word是单词(字符串)。我怎样才能匹配它们

比如:我的目标是得到这样的东西:

if pos_token == pos_feature_word

信息:我正在尝试匹配完整的字符串(word),而不是字符串中的字符。所以字符的顺序很重要。现在,我正在做的是,如果我创建的pos_功能列表中存在一组pos_标记,则创建一组pos_标记。

对于做统计模型的人来说,您在解释问题时遇到了非常困难的问题

据我所知,您希望检查两个字符串是否具有相同的字符,而不是相等的字符。如果是这样,首先检查两个字符串的长度,如果它们具有相同的字符,则它们必须相等,循环遍历一个字符串中的字符,并检查另一个字符串中是否存在

def have_same_chars(a, b):
    if (len(a) != len(b)):
        return False

    for a_char in a:
        if a_char not in b:
            return False

    return True
我想
对于令牌中的pos_单词:
如果pos_功能中的pos_字

可以

您的问题不够清楚,无法找到您的问题所在,但您可能在读取文件时遇到问题。我已经创建了一个类似的脚本,它工作得很好,尝试它,并找到你的不好的地方

#!/usr/bin/python3

tokens = ["cat", "dog", "fish"]
filename = "pos_features.txt"

with open(filename, "r") as pos_features:
    for pos_feature_word in pos_features.readlines():
        for pos_token in tokens:
            if pos_token == pos_feature_word.strip():
                print ("equal at", pos_token)
pos_features.txt的内容如下:

cat
bird
turtle
dog
输出将是:

equal at cat
equal at dog

“如果pos\u token==pos\u feature\u word”不起作用吗?不,它不起作用。你能举个例子说明它不起作用的地方吗?如果
pos\u-token
pos\u-feature\u-word
在这种情况下,结果是什么以及您期望的结果是什么?如果
pos\u-token
pos\u-feature\u-word
是stings,比如“猫”和“狗”,那么当它们是相同的单词时,
pos\u-token==pos\u-feature\u-word
应该返回
True
。这不是一个阶段性很差的问题,就是你做了一件非常错误的事情,没有提及it@cph_sto我是消极的吗?我刚才说这个问题不清楚,;大多数评论都试图弄清楚被问的是什么,其中一个答案做了问题没有要求的事情。只添加一个示例输入和预期输出就可以解决所有问题,对吗?谢谢你的回答,但这将如何跟踪单词的顺序。例如:str1=“must”和str2=“umst”,则函数将返回true。这不是我想要的,因为性格的顺序对我来说很重要。好吧,我已经告诉过你,你在解释你的问题时很不开心。正如你所看到的,我的理解是,如果这不是你的意思,那么就重新表述你的问题。如果您对订单感兴趣,只需做一个普通==比较,这有什么问题?