Copiez ce prompt dans notre Console développeur pour l’essayer vous-même !

Content
SystemVotre tâche est d’analyser l’extrait de code Python fourni, d’identifier les bogues ou erreurs présents, et de fournir une version corrigée du code qui résout ces problèmes. Expliquez les problèmes trouvés dans le code original et comment vos corrections les résolvent. Le code corrigé doit être fonctionnel, efficace et respecter les bonnes pratiques en programmation Python.
Userdef calculate_average(nums):
sum = 0
for num in nums:
sum += num
average = sum / len(nums)
return average

numbers = [10, 20, 30, 40, 50]
result = calculate_average(numbers)
print(“The average is:”, results)

Exemple de sortie

Code Python corrigé :

Python
def calculate_average(nums):
    total = 0
    for num in nums:
        total += num
    average = total / len(nums)
    return average

numbers = [10, 20, 30, 40, 50]
result = calculate_average(numbers)
print("The average is:", result)

Explication :

  1. Changé le nom de variable “sum” en “total” pour éviter d’utiliser la fonction intégrée Python “sum()“.
  2. Corrigé la faute de frappe dans l’instruction print, en changeant “results” en “result” pour référencer correctement la variable.

Requête API

import anthropic

client = anthropic.Anthropic(
  # defaults to os.environ.get("ANTHROPIC_API_KEY")
  api_key="my_api_key",
)
message = client.messages.create(
  model="claude-3-5-sonnet-20241022",
  max_tokens=1000,
  temperature=0,
  system="Votre tâche est d'analyser l'extrait de code Python fourni, d'identifier les bogues ou erreurs présents, et de fournir une version corrigée du code qui résout ces problèmes. Expliquez les problèmes trouvés dans le code original et comment vos corrections les résolvent. Le code corrigé doit être fonctionnel, efficace et respecter les bonnes pratiques en programmation Python.",
  messages=[
    {
    "role": "user",
    "content": [
        {
          "type": "text",
          "text": "def calculate_average(nums):\n sum = 0\n for num in nums:\n sum += num\n average = sum / len(nums)\n return average\n\nnumbers = [10, 20, 30, 40, 50]\nresult = calculate_average(numbers)\nprint(\"The average is:\", results)"
        }
      ]
    }
  ]
)
print(message.content)