


Gelung Python tidak berfungsi dengan readlines()
Ia sepatutnya mengira bilangan baris "------------------------" tetapi ia juga tidak berkesan Anda boleh menggunakan print("ujian") yang tidak akan dipaparkan dalam konsol, ia akan sentiasa mengembalikan 0. Tetapi sebagai contoh cetakan baris("hai") berfungsi. Program ini tidak melihat gelung saya dan saya tidak tahu mengapa. :(
def check_id(): with open('data.txt', 'r') as f: lines = f.readlines() ad = 0 print("hi") # this line works for i in lines: print("test") # this line doesn't work if i == "-------------------------": ad += 1 return str(ad)
Jika saya perlu menghantar kod lengkap untuk menyelesaikan masalah, sila tanya
Saya menukar mod "a+" kepada "r" supaya ia membaca baris dengan betul, dan ia betul, tetapi saya masih tidak dapat menyemak tatasusunan untuk mendapatkan bilangan baris. Jika anda mempunyai sebarang tekaan atau penyelesaian, sila tuliskannya.
EDIT: Berikut ialah kod lengkap untuk data.py saya dan teks dalam fail data.txt
from datetime import date date = date.today() def write_note(line): with open('data.txt', 'a') as f: if line == "!quit": f.write('\n') f.write("-------------------------") f.write('\n') ad = check_id() f.write(ad) f.write('\n') f.write("________________________") f.write('\n') else: f.write(line) f.write("\n") def read_note(id): with open('data.txt', 'r') as f: pass def see_all(): with open('data.txt', 'r') as f: get_lines = f.readlines() for i in get_lines: print(i) return get_lines def del_note(ad): with open('data.txt', 'a') as f: pass def logs(): pass def check_id(): with open('data.txt', 'r') as f: ad = 0 for i in f: if i == "-------------------------": ad += 1 return str(ad)
Kini ia adalah fail txt:
fugy hello hai bebra ------------------------- 0 ________________________ uha imna fsjfoe geso;rsevdn ------------------------- 0 # This one ________________________
Saya cuba membuat buku nota supaya saya boleh menulis nota dan membacanya. Padam func saya akan buat nanti. Ideanya adalah untuk menjadikan sifar ini lebih besar setiap kali anda menambah anotasi.
Jawapan betul
Saya rasa masalahnya ialah data.txt
文件(可能是空的,因为您提到 "test"
在控制台中不可见,这意味着该脚本不在 for
循环中运行,在其他word: lines
anda lelaran adalah panjang sifar).
Saya telah menulis kod yang berfungsi, anda boleh melihat kod dan fail ujian dengan output skrip di bawah.
Kod:
def check_id(): with open('data.txt', 'r') as opened_file: ad = 0 print("hi") # this line works for i in opened_file: print("test") # this line doesn't work if i == "-------------------------": ad += 1 return str(ad) result = check_id() print(f"result: {result}")
data.txt
kandungan:
test_1 ------------------------- test_2 ------------------------- test_3 ------------------------- test_4
Ujian:
> python3 test.py hi test test test test test test test result: 0
Editor:
op berkongsi kod sumber lengkap dan menggunakan data.txt
,其中包含cr
lf
字符(有关该字符的详细信息)。这意味着必须使用 rstrip
, yang mengandungi aksara cr
lf
(Butiran tentang watak ini). Ini bermakna garisan ini mesti dijalurkan menggunakan kaedah rstrip
.
Dalam kes ini, hanya fungsi check_id
yang relevan, jadi saya hanya berkongsi fungsi yang diubah suai:
def check_id(): with open('data.txt', 'r') as f: ad = 0 for i in f: # The cr and lf characters should be removed from line. Please see the above reference for details. if i.rstrip() == "-------------------------": ad += 1 return str(ad) result = check_id() print(result). # Result is 4
Atas ialah kandungan terperinci Gelung Python tidak berfungsi dengan readlines(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penyelesaian kepada Isu Kebenaran Semasa Melihat Versi Python di Terminal Linux Apabila anda cuba melihat versi Python di Terminal Linux, masukkan Python ...

Artikel ini menerangkan cara menggunakan sup yang indah, perpustakaan python, untuk menghuraikan html. Ia memperincikan kaedah biasa seperti mencari (), find_all (), pilih (), dan get_text () untuk pengekstrakan data, pengendalian struktur dan kesilapan HTML yang pelbagai, dan alternatif (sel

Artikel ini membandingkan tensorflow dan pytorch untuk pembelajaran mendalam. Ia memperincikan langkah -langkah yang terlibat: penyediaan data, bangunan model, latihan, penilaian, dan penempatan. Perbezaan utama antara rangka kerja, terutamanya mengenai grap pengiraan

Apabila menggunakan Perpustakaan Pandas Python, bagaimana untuk menyalin seluruh lajur antara dua data data dengan struktur yang berbeza adalah masalah biasa. Katakan kita mempunyai dua DAT ...

Artikel ini membimbing pemaju Python mengenai bangunan baris baris komando (CLI). Butirannya menggunakan perpustakaan seperti Typer, Klik, dan ArgParse, menekankan pengendalian input/output, dan mempromosikan corak reka bentuk mesra pengguna untuk kebolehgunaan CLI yang lebih baik.

Artikel ini membincangkan perpustakaan Python yang popular seperti Numpy, Pandas, Matplotlib, Scikit-Learn, Tensorflow, Django, Flask, dan Permintaan, memperincikan kegunaan mereka dalam pengkomputeran saintifik, analisis data, visualisasi, pembelajaran mesin, pembangunan web, dan h

Artikel ini membincangkan peranan persekitaran maya di Python, memberi tumpuan kepada menguruskan kebergantungan projek dan mengelakkan konflik. Ia memperincikan penciptaan, pengaktifan, dan faedah mereka dalam meningkatkan pengurusan projek dan mengurangkan isu pergantungan.

Ekspresi biasa adalah alat yang berkuasa untuk memadankan corak dan manipulasi teks dalam pengaturcaraan, meningkatkan kecekapan dalam pemprosesan teks merentasi pelbagai aplikasi.
