簡體   English   中英

根據字符串 Python 中的字符,在矩陣上查找 position 並檢索該 position 的值

[英]Find position on a matrix and retrieve the value of that position, based on characters on a string Python

我有一個可以被視為數據庫或距離矩陣的文件。 現在文件是.cnv。

    J    A    Z    B
J   0    1    3    2
A   1    0    7    3
Z   3    7    0    1
B   2    3    1    0

還有另一個包含字符串的文件。

JBZAJJZA
BBAJJZAB

現在我希望能夠從矩陣或數據庫中獲取與在 position 處進行比較的字符關聯的值。例如,根據矩陣,對於每個字符串的第一個字符,JxB 應該為 2。 我怎么寫我想要那個號碼?

到目前為止,我所有的嘗試都是在腳本上重寫矩陣,而不是使用矩陣文件。

我的想法是:在第一行找到與第一個字符串的字符匹配的字符,在第一列找到第二個字符串的字符,然后給出position Char1 x Char2的值。 但我找不到辦法做到這一點。

我正在使用 python。我還沒有為矩陣分配數據類型。

如果您閱讀本文並有任何想法/建議,謝謝:)

你需要找到一種方法來加載 python 中的數據,這將使事情變得容易得多。 然后你可以創建一個 map 將字符映射到索引:例如:

map = {"J": 0, "A": 1, "Z":2 , "B":3}

然后,如果您有兩個字符串,假設一個 numpy 數組 m 包含您的矩陣,您可以執行以下操作:

str_a = "JBZAJJZA"
str_b = "BBAJJZAB"

for char_i in str_a:
    for char_j in str_b:
        v = m[map[char_i], map[char_j]]
        print(m)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM