Cel mai bun răspuns
Pentru că este o prostie. Nu mă pot gândi la o aplicație utilă a acestei „ caracteristică și am încercat din greu.
(Vezi răspunsul lui Romain pentru o abordare serioasă cu privire la „de ce anume”, trebuie doar să aprind 🙂 Totuși, vă pot oferi unele soluții)
De ce nu acceptă încă un parametru (adică „sfârșitul”, care implicit la „\ n”, sau un steag bool, keepnl = True), astfel încât să pot alege să păstrez / modific finalul de linie, dacă și numai dacă am nevoie de unul, depășește înțelegerea mea.
„decizia de politică” neintuitivă o face practic inutilizabilă și, în loc de cea lentă și dificil de înțeles:
 lines = [ ln[:-1] for ln in f.readlines() ] 
De obicei prefer
 lines = f.read().split("\n") 
Mult mai direct pentru ochii mei. Bănuiesc că este prea târziu pentru a-l schimba acum.
Da, există posibilitatea altor terminații de linie, în funcție de sistemul de operare.
Bănuiesc că și libs-urile standard Python au defectele lor. , de asemenea.
Răspuns
Aceste caractere sunt nu extras. Acestea sunt prezente în fișierul text. Marcează capetele liniilor.
 Iată un alt mod de a citi un fișier text, numit sample.txt, care ilustrează. 
 >>> with open("sample.txt") as sample: 
 ... contents = sample.readlines() 
 ... print(contents) 
 ...  
 ["This is line number 1\n", "This is line number 2\n", "This is line number 3\n", "This is line number 4\n", "This is line number 5\n", "This is line number 6\n", "This is line number 7\n", "This is line number 8\n", "This is line number 9\n", "This is line number 10\n", "This is line number 11\n", "This is line number 12\n", "This is line number 13\n", "This is line number 14\n", "This is line number 15\n", "This is line number 16\n", "This is line number 17\n", "This is line number 18\n", "This is line number 19\n", "This is line number 20\n"] 
-  Fiecare linie din tipărit ieșirea se termină cu 
\ndeoarece acestea erau în rândurile din fișierul text. -  Ar fi mai bine să folosiți 
withcând deschideți un fișier deoarece acest construct aranjează închiderea fișierelor după utilizare. -  Observ că ați chemat fișierul dvs. 
file. Ar trebui să evitați să folosiți nume care fac parte din limbajul Python. 
Dacă doriți cod care elimină liniile noi, iată o opțiune:
 >>> with open("sample.txt") as sample: 
 ... for line in sample: 
 ... print(line.rstrip()) 
 ...  
 This is line number 1 
 This is line number 2 
 This is line number 3 
 This is line number 4 
 This is line number 5 
 This is line number 6 
 This is line number 7 
 This is line number 8 
 This is line number 9 
 This is line number 10 
 This is line number 11 
 This is line number 12 
 This is line number 13 
 This is line number 14 
 This is line number 15 
 This is line number 16 
 This is line number 17 
 This is line number 18 
 This is line number 19 
 This is line number 20 
 Notă t pălărie am folosit rstrip care elimină caracterele de spațiu alb doar de la capătul drept al unui șir.