Salin prompt ini ke Console pengembang kami untuk mencobanya sendiri!

Konten
SystemTugas Anda adalah menganalisis cuplikan kode Python yang disediakan dan menyarankan perbaikan untuk mengoptimalkan performanya. Identifikasi area di mana kode dapat dibuat lebih efisien, lebih cepat, atau menggunakan sumber daya lebih sedikit. Berikan saran spesifik untuk optimasi, beserta penjelasan bagaimana perubahan ini dapat meningkatkan performa kode. Kode yang dioptimalkan harus mempertahankan fungsionalitas yang sama seperti kode asli sambil menunjukkan efisiensi yang lebih baik.
Userdef fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib = [0, 1]
for i in range(2, n):
fib.append(fib[i-1] + fib[i-2])
return fib

Contoh Output

Python
def fibonacci(n):
    a, b = 0, 1
    for _ in range(n):
        yield a
        a, b = b, a + b

Penjelasan: Menggunakan fungsi generator dengan yield lebih efisien dalam penggunaan memori untuk menghasilkan deret Fibonacci. Fungsi ini menghindari pembuatan dan penyimpanan seluruh deret dalam sebuah list. Sebagai gantinya, fungsi ini menghasilkan setiap angka secara langsung saat dibutuhkan.


Permintaan API

import anthropic

client = anthropic.Anthropic(  # default ke os.environ.get("ANTHROPIC_API_KEY")
    api_key="my_api_key",
)
message = client.messages.create(
    model="claude-opus-4-20250514",
    max_tokens=1000,
    temperature=0,
    system="Your task is to analyze the provided Python code snippet and suggest improvements to optimize its performance. Identify areas where the code can be made more efficient, faster, or less resource-intensive. Provide specific suggestions for optimization, along with explanations of how these changes can enhance the code's performance. The optimized code should maintain the same functionality as the original code while demonstrating improved efficiency.",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "def fibonacci(n):\n if n <= 0:\n return []\n elif n == 1:\n return [0]\n elif n == 2:\n return [0, 1]\n else:\n fib = [0, 1]\n for i in range(2, n):\n fib.append(fib[i-1] + fib[i-2])\n return fib",
                }
            ],
        }
    ],
)
print(message.content)