私はプログラミングとPythonが初めてです。まだ私の最初のプログラムに取り組んでいます。1週間ほど前にこのフォーラムから少し助けてもらいましたが、今はプログラムの別の部分で行き詰まっているので、もう一度助けてくれる人が必要です:-)
この例keyfile.dat
では、ASCII 文字セット全体 (1 行に 1 文字) を含む 2 つのファイルがあります。それらは実際の文字であり、コードではありません。
test.txt
インデックスファイルのように機能します。keyfile.dat
各行には、ASCII 文字を含む行番号を指す番号が含まれています。以下のコードは、アルファベット、カンマ、疑問符などの文字を出力します。ただし、スペース、改行などは出力しません。これは、ステートメントstr.strip
内で使用しているためだと思います。print
そのコマンドを使用しないと、キャリッジ リターンを読み取らない限り、各文字を同じ行に出力する代わりに、各文字を別の行に出力します。基本的に、プログラムのこの部分は、それが何であるかに関係なく、指定された文字を出力し、入力されたのと同じように正確に出力する必要があります。
---編集--- コードが削除されました
何か案は?&返信ありがとうございます。クリントン。
keyfile.dat のサンプルコンテンツ
8
e
�
�
T
�
�
�
U
^V
�
^]
b
�
�
�
�
�
F
コンテンツ test.txt:
14
203
163
38
52
163
38
188
231
11
38
231
242
208
74
163
38
163
231
上記の私のコードを使用して出力:
T h i s , i s a t e s t ! O r i s i t ?
単語の間と ! の後にスペースが印刷されていないことがわかります。改行があるはずです。
個人的には、印刷ステートメントのせいだと思います。.strip を使用する必要があります。そうしないと、keyfile.dat から読み取った各文字が新しい行に出力されます。私の知る限り、.strip はスペース、キャリッジ リターンなどを削除します。したがって、キャリッジ リターンを読み取ってから印刷しようとすると、印刷スターメントで .strip が使用されているため、取り除かれます。