L'interpréteur de code est une fonctionnalité avancée de GPTs.x et ChatGPT d'OpenAI qui apporte un nouveau niveau d'interactivité au modèle d'IA. Il est conçu pour exécuter du code Python dans un environnement sandbox et fournir des résultats en temps réel, ce qui en fait un outil puissant pour un large éventail de tâches allant des calculs mathématiques à l'analyse de données, du prototypage de code à l'enseignement et à l'apprentissage interactif de la programmation Python. Bien qu'il existe certaines limitations à ses fonctionnalités pour des raisons de sécurité, il ouvre un tout nouvel ensemble de possibilités quant à la manière dont les utilisateurs peuvent interagir avec ChatGPT.
L'interpréteur de code est un outil développé par OpenAI pour exécuter du code de programmation dans un environnement interactif. Il est capable d'exécuter du code Python et d'afficher les résultats en temps réel.
L'interpréteur de code peut être utilisé pour diverses tâches, notamment :
ChatGPT peut générer, réviser et déboguer du code en fonction des exigences fournies. Il peut également aider à structurer le code et fournir des suggestions d’améliorations. De plus, il peut expliquer des concepts de programmation complexes et aider à résoudre des problèmes de codage.
Bien que l'interpréteur de code soit un outil puissant, il présente certaines limites :
Malgré ces limitations, l’interpréteur de code est un outil polyvalent qui peut grandement aider les programmeurs de tous niveaux.
L'interpréteur de code offre plusieurs avantages :
Pour exécuter les exemples mentionnés dans ce README, vous devez installer certaines bibliothèques Python. Vous pouvez les installer en utilisant pip :
pip install pandas openpyxl python-docx PyPDF2 fpdf2 matplotlib pillow
L'interpréteur de code a accès à un répertoire spécial, « /mnt/data », dans lequel il peut lire et écrire des fichiers. Cela peut être utilisé pour les opérations qui nécessitent de sauvegarder ou de charger des données, comme l'écriture de journaux, la sauvegarde de tracés ou le chargement de données à des fins d'analyse. Cependant, aucun autre emplacement du système de fichiers n'est accessible.
Le répertoire '/mnt/data' est un emplacement de stockage spécial auquel l'interpréteur de code peut accéder pour lire et écrire des fichiers. Ceci est particulièrement utile pour les opérations qui nécessitent un stockage persistant ou l'échange de données entre différentes exécutions de code.
Voici quelques façons d'utiliser le répertoire « /mnt/data » :
with open ( '/mnt/data/numbers.txt' , 'w' ) as file :
for num in range ( 10 ):
file . write ( str ( num ) + ' n ' )
Pour lire le fichier, vous feriez :
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' )
Vous pouvez ensuite télécharger le fichier image directement à partir du lien sandbox généré.
N'oubliez pas que toutes les opérations sur les fichiers doivent être effectuées en utilisant le chemin « /mnt/data ». L'interpréteur de code n'a accès à aucun autre emplacement du système de fichiers.
Avec l'aide de diverses bibliothèques Python telles que PIL (Python Imaging Library), OpenCV et matplotlib, diverses opérations peuvent être effectuées sur les images. Voici quelques exemples :
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 ])
La gestion des fichiers Excel est une tâche courante qui peut aller de l'analyse de données à la génération de rapports. Voici un guide sur les opérations de base et avancées avec les fichiers Excel à l'aide de Python :
Pour lire et écrire des fichiers Excel, pandas
et openpyxl
sont couramment utilisés. Voici comment lire et écrire dans un fichier Excel :
import pandas as pd
# Load an Excel file
df = pd . read_excel ( '/mnt/data/example.xlsx' )
# Display data
print ( df . head ())
###Pour écrire des données dans un fichier Excel :
# 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 )
Vous pouvez filtrer les données en fonction de conditions, ajouter de nouvelles colonnes ou transformer des données existantes :
# 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 )
Outre la lecture et l'écriture de fichiers Excel, vous pouvez également effectuer des tâches avancées de traitement de données telles que la création de tableaux croisés dynamiques ou la fusion de plusieurs fichiers Excel.
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 ())
Voici quelques problèmes courants et leurs solutions :
Si vous rencontrez d'autres problèmes, ouvrez un ticket sur GitHub ou contactez le responsable du projet.
La gestion des fichiers Microsoft Word implique la lecture, l'écriture et la modification de documents. Voici comment gérer les fichiers Word à l'aide de Python :
Pour lire du texte à partir de documents Word, la bibliothèque python-docx
est utilisée :
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 )
Pour créer et écrire dans des documents Word :
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' )
La gestion de fichiers PDF implique souvent la lecture, l'extraction de texte et parfois leur conversion vers d'autres formats. Voici comment gérer les fichiers PDF à l'aide de Python :
Pour lire et extraire du texte à partir de fichiers PDF, la bibliothèque PyPDF2
est couramment utilisée :
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 )
La création et l'écriture de texte dans des fichiers PDF peuvent être effectuées à l'aide de la bibliothèque fpdf2
:
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' )
La gestion des fichiers PDF implique souvent la lecture, l'extraction de texte, la fusion, le fractionnement et la modification de documents. Voici quelques opérations avancées utilisant 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 )
Les contributions sont les bienvenues ! N'hésitez pas à soumettre une pull request.
Si vous appréciez mon travail, pensez à me soutenir :