input: Write a python function to create a text editor with scrollbar, menu options for open, save, and quit using tkinter.
  assert isinstance(create_text_editor(), tk.Tk)
  assert isinstance(create_text_editor().children['!text'], tk.Text)
  assert isinstance(create_text_editor().children['!menu'], tk.Menu)
output: def create_text_editor():
      import tkinter as tk
      from tkinter import filedialog
  
      def open_file():
          file_path = filedialog.askopenfilename()
          if file_path:
              with open(file_path, "r") as file:
                  text_widget.delete(1.0, tk.END)
                  text_widget.insert(tk.END, file.read())
  
      def save_file():
          file_path = filedialog.asksaveasfilename(defaultextension=".txt",
                                                   filetypes=[("Text files", "*.txt"), ("All files", "*.*")])
          if file_path:
              with open(file_path, "w") as file:
                  file.write(text_widget.get(1.0, tk.END))
  
      def quit_editor():
          root.quit()
  
      root = tk.Tk()
      root.title("Text Editor")
  
      # Create text widget with scrollbar
      text_widget = tk.Text(root, wrap='word')
      scrollbar = tk.Scrollbar(root, command=text_widget.yview)
      text_widget.configure(yscrollcommand=scrollbar.set)
  
      text_widget.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)
      scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
  
      # Create menu
      menu = tk.Menu(root)
      root.config(menu=menu)
  
      file_menu = tk.Menu(menu, tearoff=0)
      menu.add_cascade(label="File", menu=file_menu)
      file_menu.add_command(label="Open", command=open_file)
      file_menu.add_command(label="Save", command(save_file)
      file_menu.add_separator()
      file_menu.add_command(label="Quit", command=quit_editor)
  
      return root