Yukarıda belirtilen hata var s1="some very long string............"
Ne yaptığımı bilen var mı?
Yukarıda belirtilen hata var s1="some very long string............"
Ne yaptığımı bilen var mı?
Yanıtlar:
"
Çizginin sonundan önce a koymazsınız.
"""
Bunu yapmak istiyorsanız kullanın :
""" a very long string ......
....that can span multiple lines
"""
Bu sorun vardı - sonunda neden \
dize karakterler dahil olmasıydı çalıştım . Bunlardan herhangi biri varsa, onlarla "kaçmak" \\
ve iyi çalışmalıdır.
r
Soruna neden olmalarını önlemek için dizeden önce bir koyabilirsiniz .
(Dizenizde satır sonları olmadığını / istemediğinizi varsayarsak ...)
Bu ip gerçekten ne kadar sürüyor?
Bir dosyadan veya komut satırından okunan bir satırın ne kadar uzun olabileceğine dair bir sınır olduğundan şüpheleniyorum ve satırın sonu kesildiği için ayrıştırıcı s1="some very long string..........
(bitiş olmadan "
) gibi bir şey görüyor ve böylece bir ayrıştırma hatası atıyor mu?
Kaynağınızda aşağıdaki gibi çizgi satırlarından kaçarak uzun satırları birden çok satıra bölebilirsiniz:
s1="some very long string.....\
...\
...."
Benim durumumda, \r\n
tek tırnaklı sözlük dizelerim vardı. Ben tüm örneklerini yerini \r
ile \\r
ve \n
ile \\n
ve düzgün eval'ed dict kaçan satır sonları dönen, sorunumu sabit.
ast.literal_eval(my_str.replace('\r','\\r').replace('\n','\\n'))
.....
Benzer bir sorunla karşılaştım. Windows'da bir klasöre yol içeren bir dize vardı örneğin C:\Users\
Sorun bu \
bir kaçış karakteri ve böylece dizelerde kullanmak için bir tane daha eklemeniz gerekir \
.
Yanlış: C:\Users\
Doğru: C:\\\Users\\\
Ben de bu sorunu yaşadım, burada cevaplar olmasına rağmen /
boş alanlar olmamasından sonra bunun önemli bir noktasını istiyorum.
Ayrıca bu tam hata mesajını aldım, benim için sorun bir "\" ekleyerek düzeltildi
En sonunda "\" ile yaklaşık sekiz satıra bölünmüş uzun dizemin bir satırda "\" eksik olduğu ortaya çıkıyor.
Python IDLE, bu hatanın açık olduğu bir satır numarası belirtmedi, ancak beni atarak tamamen doğru bir değişken atama ifadesini kırmızı renkte vurguladı. Gerçek biçimsiz dize ifadesi ("\" ile uzun satırlar), vurgulanan ifadeye bitişikti. Belki bu başka birine yardım eder.
Benim durumumda, Windows'u kullanıyorum, bu yüzden tek yerine çift tırnak kullanmak zorundayım.
C:\Users\Dr. Printer>python -mtimeit -s"a = 0"
100000000 loops, best of 3: 0.011 usec per loop
Postgresql işlevinde bu hatayı alıyordum. Ben daha iyi okunabilirlik için \ ile birden çok satır kırdı uzun bir SQL vardı. Ancak sorun buydu. Hepsini kaldırdım ve sorunu gidermek için tek bir satırda yaptım. Ben pgadmin III kullanıyordum.
Mac OS X ile ilgili durumumda, aşağıdaki ifadeyi aldım:
model.export_srcpkg(platform, toolchain, 'mymodel_pkg.zip', 'mymodel.dylib’)
Hata alıyordum:
File "<stdin>", line 1
model.export_srcpkg(platform, toolchain, 'mymodel_pkg.zip', 'mymodel.dylib’)
^
SyntaxError: EOL while scanning string literal
Ben değiştirdikten sonra:
model.export_srcpkg(platform, toolchain, "mymodel_pkg.zip", "mymodel.dylib")
İşe yaradı...
David
Kişisel variable(s1)
açıklıklı çoklu çizgiler. Bunu yapmak için (yani dizenizin birden çok satıra yayılmasını istiyorsanız) üçlü tırnak ("" ") kullanmanız gerekir.
s1="""some very long
string............"""
Herhangi bir sabit disk dizinine erişirken de aynı sorunla karşılaşmıştım. Sonra bu şekilde çözdüm.
import os
os.startfile("D:\folder_name\file_name") #running shortcut
os.startfile("F:") #accessing directory
Yukarıdaki resimde bir hata ve çözülmüş çıktı gösterilmektedir.