def longest_palindrome(text):
if type(text) is not str or len(text) > 512:
raise ValueError("palindrome.input")
best = (0, 0)
for center in range(len(text)):
for left, right in ((center, center), (center, center+1)):
while left >= 0 and right < len(text) and text[left] == text[right]:
stop = right+1
if stop-left > best[1]-best[0] or (stop-left == best[1]-best[0] and left < best[0]):
best = (left, stop)
left -= 1
right += 1
return text[best[0]:best[1]]
✳En soldaki en uzun palindromlar
✓ DeğişikliklerUygulamadan önce inceleyin ↗
Çalışma alanı çizimi
Proje
Boş metni, çift merkezleri ve eşit uzunlukları Unicode normalleştirmesi veya grafem bölümlemesi olmadan test edin.
Uygulamadan önce inceleyin
Gerçek davranışı beklenen sonuçla karşılaştırın. Bir kontrol başarısız olursa yeni değişikliklerden önce nedenini araştırın.
Modeller
Temel URL ve gerekiyorsa API anahtarıyla OpenAI uyumlu veya Anthropic endpoint yapılandırın. Bağlantıyı test edin. Yerel model sunucusu çalışıyor olmalıdır; uzak araçlar ayrıca veri aktarabilir.
def longest_palindrome(text):
if type(text) is not str or len(text) > 512:
raise ValueError("palindrome.input")
best = (0, 0)
for center in range(len(text)):
for left, right in ((center, center), (center, center+1)):
while left >= 0 and right < len(text) and text[left] == text[right]:
stop = right+1
if stop-left > best[1]-best[0] or (stop-left == best[1]-best[0] and left < best[0]):
best = (left, stop)
left -= 1
right += 1
return text[best[0]:best[1]]
Yapay zekâ ile kod çalışma alanı
Python değişikliği boyunca metin özelliğinin davranışını açık tutun
MirrorVane, seçtiğiniz model bağlantısıyla Python geliştirmek için bir Windows kodlama çalışma alanı sunar. Metin işleme görevine, eşit derecede geçerli sonuçlar arasında nasıl seçim yapılacağı dahil istenen davranışı gösteren örneklerle başlayın. Böylece asistan uygulamayı yeniden yapılandırmayı önerdiğinde görüşmenin koruyacağı somut bir ürün kuralı olur.
En uzun palindrom örneği çalışma alanına getirilebilecek yararlı bir istektir. Modelden fonksiyonun uzunluklar eşitken en soldaki sonucu nasıl seçtiğini ve neyi karakter saydığını incelemesini isteyin. Görsel olarak aynı tüm dizelerin aynı gösterime sahip olduğunu varsaymak yerine tartışmayı uygulamanın metin modeline bağlamak için çağıran kodu ekleyin.
Önerilen kodu boş girdi, eşitlikler ve uygulamanızın desteklediği karakter durumlarına yönelik kısa test örnekleriyle karşılaştırın. Testleri Python ortamınızda çalıştırın ve sonucu kullanıcıların karşılaştığı yerde inceleyin. Çıktı uzunluğunu koruyan değişiklik yine farklı metin seçebilir; kabul değerlendirmesi gerçekten dönen değeri karşılaştırmalıdır.
Desteklenen OpenAI uyumlu veya Anthropic uç noktasında sunulduğunda kısıtlamasız bir yapay zekâ modeli bu işi destekleyebilir. Gerekli kimlik bilgilerini yapılandırıp araçlarını ve bağlam sınırlarını doğrulayın. Model davranışı sağlayıcıya bağlı kalırken çalışma alanı öneriyi sağladığınız belirli Python sözleşmesi ve örneklerle karşılaştırmanıza olanak tanır.
Python metin özelliği incelemesi için sorular
Olası sonuçlar arasındaki eşitliği nasıl açıklamalıyım?
Hangi sonucun kazanacağını belirtin ve eşit uzunlukta adaylar üreten girdi sağlayın. Verilen örnekte kural en soldaki sonucu tercih eder. Yalnızca uzunluğu kontrol etmek yerine tam dönen metni karşılaştırın.
Python dize eşitliğinden görsel karakter eşitliği varsayılabilir mi?
Uygulamanın metin kurallarının örtük olduğunu varsaymayın. Normalleştirme veya grafem işleme gerekip gerekmediğini belirtin ve yerini inceleyin. Verilen örnek Python dize öğeleriyle çalışır; daha geniş metin davranışı açık gereksinimler ve test örnekleri ister.
Model çok daha karmaşık bir uygulama önerirse?
Karmaşıklığı hangi gereksinimin doğurduğunu ve hangi kanıtın desteklediğini sorun. Performansı düşünmeden önce önerilen davranışı aynı test örnekleriyle inceleyin. Gelişmiş bir teknik tek başına bakım değişikliğini gerekçelendirmeyi kolaylaştırmaz.
Çalışma alanı Python çalışma zamanımı otomatik seçer mi?
Projenizin belirlediği ortamı kullanın ve kontrollerinin nasıl çalıştırıldığını doğrulayın. Belgelenen çalışma alanı kodlama görüşmelerini ve düzenlemeleri destekler; klasör açmak belirli Python sürümünü kurmaz veya bağımlılıklarını yüklemez.