Der Code-Interpreter ist eine erweiterte Funktion von GPTs.x und ChatGPT von OpenAI, die dem KI-Modell ein neues Maß an Interaktivität verleiht. Es wurde entwickelt, um Python-Code in einer Sandbox-Umgebung auszuführen und Ergebnisse in Echtzeit bereitzustellen. Damit ist es ein leistungsstarkes Werkzeug für eine Vielzahl von Aufgaben, von mathematischen Berechnungen bis hin zur Datenanalyse, vom Code-Prototyping bis hin zum interaktiven Lehren und Lernen der Python-Programmierung. Auch wenn die Funktionalität aus Sicherheitsgründen gewisse Einschränkungen aufweist, eröffnet es völlig neue Möglichkeiten für die Interaktion von Benutzern mit ChatGPT.
Der Code-Interpreter ist ein von OpenAI entwickeltes Tool zur Ausführung von Programmiercode in einer interaktiven Umgebung. Es ist in der Lage, Python-Code auszuführen und die Ergebnisse in Echtzeit anzuzeigen.
Der Code-Interpreter kann für eine Vielzahl von Aufgaben verwendet werden, darunter:
ChatGPT kann Code basierend auf den bereitgestellten Anforderungen generieren, überprüfen und debuggen. Es kann auch bei der Strukturierung von Code helfen und Verbesserungsvorschläge liefern. Darüber hinaus kann es komplexe Programmierkonzepte erklären und bei der Lösung von Codierungsproblemen helfen.
Obwohl der Code-Interpreter ein leistungsstarkes Werkzeug ist, weist er bestimmte Einschränkungen auf:
Trotz dieser Einschränkungen ist der Code-Interpreter ein vielseitiges Werkzeug, das Programmierern aller Erfahrungsstufen eine große Hilfe sein kann.
Der Code-Interpreter bietet mehrere Vorteile:
Um die in dieser README-Datei erwähnten Beispiele auszuführen, müssen Sie einige Python-Bibliotheken installieren. Sie können sie mit pip installieren:
pip install pandas openpyxl python-docx PyPDF2 fpdf2 matplotlib pillow
Der Code-Interpreter hat Zugriff auf ein spezielles Verzeichnis, „/mnt/data“, in dem er Dateien lesen und schreiben kann. Dies kann für Vorgänge verwendet werden, bei denen Daten gespeichert oder geladen werden müssen, z. B. das Schreiben von Protokollen, das Speichern von Diagrammen oder das Laden von Daten zur Analyse. Auf andere Speicherorte im Dateisystem kann jedoch nicht zugegriffen werden.
Das Verzeichnis „/mnt/data“ ist ein spezieller Speicherort, auf den der Code-Interpreter zugreifen kann, um Dateien zu lesen und zu schreiben. Dies ist besonders nützlich für Vorgänge, die eine dauerhafte Speicherung oder den Datenaustausch zwischen verschiedenen Codeausführungen erfordern.
Hier sind einige Möglichkeiten, wie Sie das Verzeichnis „/mnt/data“ verwenden können:
with open ( '/mnt/data/numbers.txt' , 'w' ) as file :
for num in range ( 10 ):
file . write ( str ( num ) + ' n ' )
Um die Datei zu lesen, würden Sie Folgendes tun:
with open ( '/mnt/data/numbers.txt' , 'r' ) as file :
numbers = file . readlines ()
with open ( '/mnt/data/log.txt' , 'w' ) as file :
file . write ( 'This is a log message.' )
import matplotlib . pyplot as plt
plt . plot ([ 0 , 1 , 2 , 3 , 4 ], [ 0 , 1 , 4 , 9 , 16 ])
plt . savefig ( '/mnt/data/plot.png' )
Anschließend können Sie die Bilddatei direkt über den generierten Sandbox-Link herunterladen.
Denken Sie daran, dass alle Dateivorgänge über den Pfad „/mnt/data“ ausgeführt werden müssen. Der Code-Interpreter hat keinen Zugriff auf andere Speicherorte im Dateisystem.
Mit Hilfe verschiedener Python-Bibliotheken wie PIL (Python Imaging Library), OpenCV und Matplotlib können verschiedene Operationen an Bildern durchgeführt werden. Hier einige Beispiele:
from PIL import Image
import matplotlib . pyplot as plt
# Open the image file
img = Image . open ( '/mnt/data/your_image.jpg' )
# Display the image
plt . imshow ( img )
plt . axis ( 'off' ) # Turn off the axis
plt . show ()
# Resize the image
img_resized = img . resize (( new_width , new_height ))
# Rotate the image
img_rotated = img . rotate ( angle )
# Flip the image
img_flipped = img . transpose ( Image . FLIP_LEFT_RIGHT )
# Convert the image to grayscale
img_gray = img . convert ( 'L' )
from PIL import ImageEnhance
# Increase the brightness
enhancer = ImageEnhance . Brightness ( img )
img_brighter = enhancer . enhance ( 1.5 )
from PIL import ImageFilter
# Apply a filter
img_blurred = img . filter ( ImageFilter . GaussianBlur ( radius = 5 ))
# Get the histogram
hist = img . histogram ()
# Merge images
img_merged = Image . merge ( 'RGB' , [ img1 , img2 , img3 ])
Der Umgang mit Excel-Dateien ist eine häufige Aufgabe, die von der Datenanalyse bis zur Erstellung von Berichten reichen kann. Hier ist eine Anleitung zu grundlegenden und erweiterten Vorgängen mit Excel-Dateien mit Python:
Zum Lesen und Schreiben von Excel-Dateien wird häufig pandas
zusammen mit openpyxl
verwendet. So lesen und schreiben Sie in eine Excel-Datei:
import pandas as pd
# Load an Excel file
df = pd . read_excel ( '/mnt/data/example.xlsx' )
# Display data
print ( df . head ())
###So schreiben Sie Daten in eine Excel-Datei:
# Create a DataFrame
data = { 'Name' : [ 'Alice' , 'Bob' , 'Charlie' ], 'Age' : [ 25 , 30 , 35 ]}
df = pd . DataFrame ( data )
# Write DataFrame to an Excel file
df . to_excel ( '/mnt/data/saved_data.xlsx' , index = False )
Sie können Daten basierend auf Bedingungen filtern, neue Spalten hinzufügen oder vorhandene Daten umwandeln:
# Filter rows where age is greater than 28
filtered_df = df [ df [ 'Age' ] > 28 ]
# Add a new column
df [ 'Age Next Year' ] = df [ 'Age' ] + 1
# Sort data
sorted_df = df . sort_values ( by = 'Age' , ascending = False )
Neben dem Lesen und Schreiben von Excel-Dateien können Sie auch erweiterte Datenverarbeitungsaufgaben ausführen, wie zum Beispiel das Erstellen von Pivot-Tabellen oder das Zusammenführen mehrerer Excel-Dateien.
import pandas as pd
# Load example data
df = pd . read_excel ( '/mnt/data/example.xlsx' )
# Create a pivot table
pivot_table = df . pivot_table ( index = 'Category' , values = 'Sales' , aggfunc = 'sum' )
# Display the pivot table
print ( pivot_table )
import pandas as pd
import glob
# Read all Excel files in the directory
files = glob . glob ( '/mnt/data/*.xlsx' )
# Merge data from all files
df_list = [ pd . read_excel ( file ) for file in files ]
merged_df = pd . concat ( df_list , ignore_index = True )
# Display the merged data
print ( merged_df . head ())
Hier sind einige häufige Probleme und ihre Lösungen:
Wenn Sie auf weitere Probleme stoßen, öffnen Sie ein Problem auf GitHub oder wenden Sie sich an den Projektbetreuer.
Der Umgang mit Microsoft Word-Dateien umfasst das Lesen, Schreiben und Ändern von Dokumenten. So können Sie Word-Dateien mit Python verwalten:
Um Text aus Word-Dokumenten zu lesen, wird die Bibliothek python-docx
verwendet:
from docx import Document
# Load a Word document
doc = Document ( '/mnt/data/example.docx' )
# Read each paragraph
for para in doc . paragraphs :
print ( para . text )
So erstellen und schreiben Sie Word-Dokumente:
from docx import Document
# Create a new Word document
doc = Document ()
doc . add_paragraph ( 'Hello, this is a test document.' )
# Save the document
doc . save ( '/mnt/data/new_example.docx' )
from docx import Document
# Create a new Word document
doc = Document ()
# Add a table with specified number of rows and columns
table = doc . add_table ( rows = 3 , cols = 3 )
# Add data to the table
data = [
[ "Header 1" , "Header 2" , "Header 3" ],
[ "Row 1, Col 1" , "Row 1, Col 2" , "Row 1, Col 3" ],
[ "Row 2, Col 1" , "Row 2, Col 2" , "Row 2, Col 3" ]
]
for row_index , row_data in enumerate ( data ):
row = table . rows [ row_index ]
for col_index , cell_data in enumerate ( row_data ):
row . cells [ col_index ]. text = cell_data
# Save the document
doc . save ( '/mnt/data/table_example.docx' )
from docx import Document
from docx . shared import Pt , RGBColor
# Load a Word document
doc = Document ( '/mnt/data/example.docx' )
# Add a paragraph with specific formatting
paragraph = doc . add_paragraph ()
run = paragraph . add_run ( 'This is a formatted text.' )
run . font . size = Pt ( 14 ) # Font size
run . font . bold = True # Bold text
run . font . color . rgb = RGBColor ( 255 , 0 , 0 ) # Red color text
# Save the document
doc . save ( '/mnt/data/formatted_text.docx' )
from docx import Document
from docx . shared import Inches
# Create a new Word document
doc = Document ()
# Add a paragraph
doc . add_paragraph ( 'Below is an image:' )
# Add an image to the document
doc . add_picture ( '/mnt/data/your_image.jpg' , width = Inches ( 4 ), height = Inches ( 3 ))
# Save the document
doc . save ( '/mnt/data/image_example.docx' )
from docx import Document
# Create a new Word document
doc = Document ()
# Add a header
header = doc . sections [ 0 ]. header
header_paragraph = header . paragraphs [ 0 ]
header_paragraph . text = "This is the header"
# Add a footer
footer = doc . sections [ 0 ]. footer
footer_paragraph = footer . paragraphs [ 0 ]
footer_paragraph . text = "This is the footer"
# Add some body text
doc . add_paragraph ( "This is the body text of the document." )
# Save the document
doc . save ( '/mnt/data/header_footer_example.docx' )
Die Verwaltung von PDF-Dateien erfordert häufig das Lesen, Extrahieren von Text und manchmal auch deren Konvertierung in andere Formate. So verarbeiten Sie PDF-Dateien mit Python:
Zum Lesen und Extrahieren von Text aus PDF-Dateien wird häufig die PyPDF2
Bibliothek verwendet:
import PyPDF2
# Open a PDF file
with open ( '/mnt/data/example.pdf' , 'rb' ) as file :
pdf_reader = PyPDF2 . PdfReader ( file )
# Extract text from the first page
page = pdf_reader . pages [ 0 ]
text = page . extract_text ()
print ( text )
Das Erstellen und Schreiben von Text in PDF-Dateien kann mit der fpdf2
-Bibliothek erfolgen:
from fpdf import FPDF
# Create instance of FPDF class
pdf = FPDF ()
# Add a page
pdf . add_page ()
# Set font
pdf . set_font ( "Arial" , size = 12 )
# Add a cell
pdf . cell ( 200 , 10 , txt = "Welcome to PDF handling with Python!" , ln = True , align = 'C' )
# Save the PDF to a file
pdf . output ( '/mnt/data/new_example.pdf' )
Der Umgang mit PDF-Dateien umfasst häufig das Lesen, Extrahieren von Text, das Zusammenführen, Teilen und Ändern von Dokumenten. Hier sind einige erweiterte Operationen mit Python:
import PyPDF2
# List of PDF files to be merged
pdf_files = [ '/mnt/data/file1.pdf' , '/mnt/data/file2.pdf' , '/mnt/data/file3.pdf' ]
# Create a PDF merger object
pdf_merger = PyPDF2 . PdfMerger ()
# Append each PDF file
for pdf in pdf_files :
pdf_merger . append ( pdf )
# Write out the merged PDF
with open ( '/mnt/data/merged.pdf' , 'wb' ) as merged_pdf :
pdf_merger . write ( merged_pdf )
import PyPDF2
# Path to the PDF file
pdf_path = '/mnt/data/example.pdf'
# Create a PDF reader object
pdf_reader = PyPDF2 . PdfReader ( pdf_path )
# Split the PDF into separate pages
for page_num in range ( len ( pdf_reader . pages )):
pdf_writer = PyPDF2 . PdfWriter ()
pdf_writer . add_page ( pdf_reader . pages [ page_num ])
# Save each page as a separate PDF
output_path = f'/mnt/data/split_page_ { page_num + 1 } .pdf'
with open ( output_path , 'wb' ) as output_pdf :
pdf_writer . write ( output_pdf )
import PyPDF2
# Paths to the original PDF and the watermark PDF
original_pdf_path = '/mnt/data/original.pdf'
watermark_pdf_path = '/mnt/data/watermark.pdf'
# Create PDF reader objects
original_pdf = PyPDF2 . PdfReader ( original_pdf_path )
watermark_pdf = PyPDF2 . PdfReader ( watermark_pdf_path )
# Create a PDF writer object
pdf_writer = PyPDF2 . PdfWriter ()
# Apply the watermark to each page
for page_num in range ( len ( original_pdf . pages )):
original_page = original_pdf . pages [ page_num ]
watermark_page = watermark_pdf . pages [ 0 ]
original_page . merge_page ( watermark_page )
pdf_writer . add_page ( original_page )
# Save the watermarked PDF
with open ( '/mnt/data/watermarked.pdf' , 'wb' ) as watermarked_pdf :
pdf_writer . write ( watermarked_pdf )
import PyPDF2
# Path to the PDF file
pdf_path = '/mnt/data/example.pdf'
# Create a PDF reader object
pdf_reader = PyPDF2 . PdfReader ( pdf_path )
# Specify the range of pages to extract text from
start_page = 1
end_page = 3
# Extract text from the specified page range
extracted_text = ''
for page_num in range ( start_page - 1 , end_page ):
page = pdf_reader . pages [ page_num ]
extracted_text += page . extract_text ()
print ( extracted_text )
import PyPDF2
# Path to the PDF file
pdf_path = '/mnt/data/example.pdf'
# Create a PDF reader object
pdf_reader = PyPDF2 . PdfReader ( pdf_path )
pdf_writer = PyPDF2 . PdfWriter ()
# Copy all pages to the writer object
for page_num in range ( len ( pdf_reader . pages )):
pdf_writer . add_page ( pdf_reader . pages [ page_num ])
# Add metadata
metadata = {
'/Title' : 'Example PDF' ,
'/Author' : 'Your Name' ,
'/Subject' : 'Example Subject' ,
'/Keywords' : 'PDF, example, metadata'
}
pdf_writer . add_metadata ( metadata )
# Save the PDF with metadata
with open ( '/mnt/data/metadata_example.pdf' , 'wb' ) as metadata_pdf :
pdf_writer . write ( metadata_pdf )
Beiträge sind willkommen! Bitte stellen Sie gerne einen Pull-Request ein.
Wenn Sie meine Arbeit schätzen, denken Sie bitte darüber nach, mich zu unterstützen: