質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

129閲覧

python file操作において、パスを指定した場合、テキストファイルに書き込みができない

kimukimu009

総合スコア33

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/01/17 09:56

■やりたいこと
パスを指定して、「C:\Users\motoc\フォルダ」の中にある
テキストファイル(test.txt)に対して、
特定の文字列(これは2行目です。)を書き込む

■できないこと:
パスを指定した書き方では、test.txtに、書き込みされていなかったが、
パスを指定しない(pythoファイル直下のtest.txtに対して操作)場合は、書き込みがうまくいった。

■pythonファイルの場所
C:\Users\motoc\

■成功しなかったpyhtonファイル

f = open('C:\Users\motoc\test.txt','w') f.write('これは2行目です。\n') f.close()

■成功したpyhtonファイル

f = open('test.txt','w') f.write('これは2行目です。\n') f.close()

■なにが、違うのでしょうか?
パスの記述のしかたに誤りがあるのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

\t の部分がタブ文字に置き換わっているのでは?

f = open(r'C:\Users\motoc\test.txt','w')

あるいは

f = open('C:\Users\motoc\test.txt','w')

にしてみてはいががでしょう?

投稿2020/01/17 10:06

shiracamus

総合スコア5406

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kimukimu009

2020/01/17 10:14

お忙しい所、ありがとうございます! 両方、成功しました。 恥ずかしながら、教えて下さい。 「\t の部分がタブ文字に置き換わっているのでは?」 というのは、どういうことでしょうか? お手数をおかけしますが、よろしくお願いいたします。
shiracamus

2020/01/17 10:18

文字列リテラルでは、バックスラッシュで特殊文字を指定できます。 '\n' で改行文字、'\b' でバックスペース文字、'\t' でタブ文字など。 参考: https://docs.python.org/ja/3/reference/lexical_analysis.html#string-and-bytes-literals 文字列リテラルの先頭に r を付けると raw文字列指定で、バックスラッシュエスケープが無効になります。(厳密には処理される部分もありますが)
kimukimu009

2020/01/17 10:22

ありがとうございました。 なるほどです。 特殊文字として、認識されたというわけですね。 \test.txt','w' の \t の部分が。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問