Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.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 3.x 是什么导致了这个名称错误?Python3.x_Python 3.x_Nameerror - Fatal编程技术网

Python 3.x 是什么导致了这个名称错误?Python3.x

Python 3.x 是什么导致了这个名称错误?Python3.x,python-3.x,nameerror,Python 3.x,Nameerror,我的代码是来自网站rosalind.info的IPRB问题。它适用于变量k、m、n的示例数据集值2、2、2。但是当我改变变量,比如25,25,19。它给出了: C:\Users\mNm\PycharmProjects\PySummer\venv\Scripts\python.exe C:/Users/mNm/PycharmProjects/PySummer/venv/Scripts/IPRB.py Traceback (most recent call last): File "C:/Use

我的代码是来自网站rosalind.info的IPRB问题。它适用于变量k、m、n的示例数据集值2、2、2。但是当我改变变量,比如25,25,19。它给出了:

C:\Users\mNm\PycharmProjects\PySummer\venv\Scripts\python.exe C:/Users/mNm/PycharmProjects/PySummer/venv/Scripts/IPRB.py
Traceback (most recent call last):
  File "C:/Users/mNm/PycharmProjects/PySummer/venv/Scripts/IPRB.py", line 43, in <module>
    pr3 = float(pr31 + pr32 + pr33)
NameError: name 'pr31' is not defined

Process finished with exit code 1

只有当
i==n
并且
org
中的某个值等于
k
时,才定义
pr31
,消息指出了问题所在。在将
pr31
设置为具有值之前,您正在尝试访问第43行上的
pr31
。以后,请进行更改。这将帮助您和我们了解问题。谢谢。我将删除并以更清晰的方式重新发送问题。对不起,我态度不好。这是我的第一次。
k = 2
m = 2
n = 2

whole = k + m + n
org = [k, m, n]

for i in org:
    if i == k:
        k_start = float(k/whole)
        for j in org:
            if j == k:
                pr11 = float(k_start * ((k - 1) / (whole - 1)))
            if j == m:
                pr12 = float(k_start * (m / (whole - 1)))
            if j == n:
                pr13 = float(k_start * (n / (whole - 1)))

    pr1 = float(pr11 + pr12 + pr13)

    if i == m:
        m_start = float(m/whole)
        for j in org:
            if j == k:
                pr21 = float(m_start * (k / (whole - 1)))
            if j == m:
                pr22 = float(m_start * ((m - 1) / (whole - 1)) * 0.75)
            if j == n:
                pr23 = float(m_start * (n / (whole - 1)) * 0.5)

    pr2 = float(pr21 + pr22 + pr23)

    if i == n:
        n_start = float(n / whole)
        for j in org:
            if j == k:
                pr31 = float(n_start * (k / (whole - 1)))
            if j == m:
                pr32 = float(n_start * (m / (whole - 1)) * 0.5)
            if j == n:
                pr33 = float(n_start * ((n - 1) / (whole - 1)) * 0)

    pr3 = float(pr31 + pr32 + pr33)

dom_pr = float(pr1 + pr2 + pr3)

print(dom_pr)