Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.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 类型错误:';StringVar';对象是不可编辑的 从tkinter导入* raiz=Tk() 标题(“最近使用的LRU”) raiz.可调整大小(1,1) 几何图形(“1080x720”) #----------------------------------------- marcos=IntVar() #------------------------------------- label1=标签(raiz,text=“Numero de Marcos:”) 标签1.位置(x=260,y=100) texto1=条目(raiz,textvariable=marcos) texto1.位置(x=500,y=100) s=StringVar() label2_5=标签(raiz,text=“*介绍西班牙的数字) 标签2_5.位置(x=260,y=200) label2=标签(raiz,text=“Cadena de referenceas:) 标签2.位置(x=260,y=250) texto2=条目(raiz,textvariable=s) texto2.位置(x=555,y=250) def perro(): PROC=IntVar() PROC=int(输入()) f、 圣,法洛斯,mf=[],[],0,“否” s=列表(映射(int,input().strip().split()) 对于s中的i: 如果我不在f中: 如果len(f)_Python_Tkinter - Fatal编程技术网

Python 类型错误:';StringVar';对象是不可编辑的 从tkinter导入* raiz=Tk() 标题(“最近使用的LRU”) raiz.可调整大小(1,1) 几何图形(“1080x720”) #----------------------------------------- marcos=IntVar() #------------------------------------- label1=标签(raiz,text=“Numero de Marcos:”) 标签1.位置(x=260,y=100) texto1=条目(raiz,textvariable=marcos) texto1.位置(x=500,y=100) s=StringVar() label2_5=标签(raiz,text=“*介绍西班牙的数字) 标签2_5.位置(x=260,y=200) label2=标签(raiz,text=“Cadena de referenceas:) 标签2.位置(x=260,y=250) texto2=条目(raiz,textvariable=s) texto2.位置(x=555,y=250) def perro(): PROC=IntVar() PROC=int(输入()) f、 圣,法洛斯,mf=[],[],0,“否” s=列表(映射(int,input().strip().split()) 对于s中的i: 如果我不在f中: 如果len(f)

Python 类型错误:';StringVar';对象是不可编辑的 从tkinter导入* raiz=Tk() 标题(“最近使用的LRU”) raiz.可调整大小(1,1) 几何图形(“1080x720”) #----------------------------------------- marcos=IntVar() #------------------------------------- label1=标签(raiz,text=“Numero de Marcos:”) 标签1.位置(x=260,y=100) texto1=条目(raiz,textvariable=marcos) texto1.位置(x=500,y=100) s=StringVar() label2_5=标签(raiz,text=“*介绍西班牙的数字) 标签2_5.位置(x=260,y=200) label2=标签(raiz,text=“Cadena de referenceas:) 标签2.位置(x=260,y=250) texto2=条目(raiz,textvariable=s) texto2.位置(x=555,y=250) def perro(): PROC=IntVar() PROC=int(输入()) f、 圣,法洛斯,mf=[],[],0,“否” s=列表(映射(int,input().strip().split()) 对于s中的i: 如果我不在f中: 如果len(f),python,tkinter,Python,Tkinter,名称s被定义为StringVar类型的全局变量,语句如下: from tkinter import* raiz=Tk() raiz.title("Last Recently Used LRU") raiz.resizable(1,1) raiz.geometry("1080x720") #----------------------------------------- marcos=IntVar() #------------------------------------- label1=L

名称
s
被定义为
StringVar
类型的全局变量,语句如下:

from tkinter import*
raiz=Tk()
raiz.title("Last Recently Used LRU")
raiz.resizable(1,1)
raiz.geometry("1080x720")
#-----------------------------------------
marcos=IntVar()
#-------------------------------------
label1=Label(raiz,text="Numero de Marcos:")
label1.place(x=260,y=100)
texto1=Entry(raiz,textvariable=marcos)
texto1.place(x=500,y=100)
s=StringVar()
label2_5=Label(raiz,text="*Introduce una cadena de numeros separados por espacios")
label2_5.place(x=260,y=200)
label2=Label(raiz,text="Cadena de Referencias:")
label2.place(x=260,y=250)
texto2=Entry(raiz,textvariable=s)
texto2.place(x=555,y=250)
def perro():
    PROC=IntVar()
    PROC = int(input())
    f, st, fallos, mf = [], [], 0, 'No'
    s = list(map(int, input().strip().split()))
for i in s:
    if i not in f:
        if len(f)<PROC:
            f.append(i)
            st.append(len(f)-1)
        else:
            ind = st.pop(0)
            f[ind] = i
            st.append(ind)
        mf = 'X'
        fallos += 1
    else:
        st.append(st.pop(st.index(f.index(i))))
    mf = '--'
    print("\n\n")
    print("   %d\t\t" % i, end='')
    for x in f:
        print(x, end=' ')
    for x in range(PROC - len(f)):
        print(' ', end=' ')
    print(" %s" % mf)
botonp=Button(raiz,text="Ejecutar",command=perro)


botonp.place(x=540,y=350)
raiz.mainloop()
因此,当您尝试使用以下方法对其进行迭代时:

s=StringVar()
它产生上述异常,因为
StringVar
对象不可编辑

在函数
perro
中使用列表指定
s
这一事实没有帮助,因为使用列表指定的
s
变量是
perro
函数的局部变量,与全局变量完全不同

您应该让
perro
返回列表,并迭代返回值

更改:

for i in s:
致:


你的输入是什么?检查第
行的缩进,如果我不在f:
中,就在第
行后面的s:
中的i:中,如果这是你文章中的输入错误,请编辑它。否则请修复代码。在他的代码中哪里有一个名为
list
的变量?正如我提到的,它位于OP代码的“其他部分”中。OP没有发布代码已满,但可以肯定的是,
列表
已在代码的其他部分中分配了未发布在此处的其他值。@GerardoSoto我已相应地更新了我的答案。
    s = list(map(int, input().strip().split()))
for i in s:
    return list(map(int, input().strip().split()))
for i in perro():