Open ile dosyayı açmaya çalışırken "an integer is required (got type str)" hatası alıyorum

Arkadaşlar ben şöyle bir:

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Users\pc\AppData\Local\Programs\Python\Python38\lib\tkinter\__init__.py", line 1883, in __call__
    return self.func(*args)
  File "c:/Users/pc/OneDrive/Masaüstü/Dosyalar/Yazılım Dosyaları/Fonia IDLE/main.py", line 19, in oynat    
    a = open("run.py","w")
TypeError: an integer is required (got type str)

Hatayla karşılaşıyorum yardım ederseniz sevinirim.

Eğer dosya kodlarını isterseniz:

import sys
from tkinter.font import BOLD
if sys.version_info.major == 2:
    exit()
elif sys.version_info.major == 3:
    import builtins as builtins
    import tkinter as tk
import io
import tokenize
import keyword
from tkinter import *
import os
from os import*

root = tk.Tk()
menubar = Menu(root)
def oynat():
    veri=text.get(1.0,"end-1c")
    a = open("run.py","w")
    a.write(veri)
    os.startfile(r'run.py')
root.config(menu=menubar)
menubar.add_command(label="Run",command=oynat)
root.title("Entegre | run.py")
root.iconbitmap("teko.ico")

text = Text(root, fg="black", bg="white",borderwidth=0,insertbackground="black",insertwidth=2,selectbackground="#fff9d3")
text.pack(fill="both", expand=True)
text.config(font=("Courier New",10,BOLD))

count = 0

def colorize(*args):
    global count
    row1, col1 = args[0].start
    row1, col1 = str(row1), str(col1)
    row2, col2 = args[0].end
    row2, col2 = str(row2), str(col2)
    start = ".".join((row1, col1))
    end = ".".join((row2, col2))
    text.tag_add(str(count), start, end)
    try:
        text.tag_config(str(count), foreground=args[1], font=args[2])
    except IndexError:
        text.tag_config(str(count), foreground=args[1])
    count += 1

def search(event):
    try:
        for i in tokenize.tokenize(io.BytesIO(text.get("1.0", "end").encode("utf-8")).readline):
            if i.type == 1:
                if i.string in keyword.kwlist:
                    colorize(i, "tomato")
                elif i.string in dir(builtins):
                    colorize(i, "#423189")
                else:
                    colorize(i, "black")
            elif i.type == 2:
                colorize(i, "cyan")
            elif i.type == 3:
                colorize(i, "orange")
            elif i.type == 53:
                if i.string == "," or i.string == "." or i.string == ":":
                    colorize(i, "orange")
                elif i.string == "(" or i.string == ")" or i.string == "[" \
                        or i.string == "]" or i.string == "{" or i.string == "}":
                    colorize(i, "orange")
                else:
                    colorize(i, "green")
            elif i.type == 57:
                colorize(i, "grey", "TkDefaultFont 10 italic")
    except tokenize.TokenError:
        pass

def ex(event):
    exit()
root.bind("<Control-w>",ex)
text.bind("<KeyRelease>", search)
root.mainloop()

Bu konudaki çözüm olarak işaretlenmiş gönderide sebebi anlatılmakta

1 Beğeni