2011-08-02 7 views
3

私の上司は、私のPythonスクリプトにWindowsの改行があっても、私に迷惑をかけることがありますが、私の人生のために、彼がどのように問題を引き起こしているのか理解できません。Pythonスクリプトには通常どのような改行がありますか?

Pythonスクリプトの通常の改行は '\ r \ n'ですか?それとも、PC用のIDLEでのみ起こりますか?

PS:Macに「\ n's」というスクリプトを書いているようですが、「\ r \ n」は問題の原因になりますか?

編集: OK ...今私は完全に混乱しています。 WindowsでPythonで書かれたファイルを解釈するときに、スクリーンに行を '\ n'として出力すると、それらはすべて吐き出されます。 Windows用のPythonインタプリタは改行を翻訳しますか?

+3

を関係なく。 –

+0

ソースコントロールを使用していますか? –

+1

私は上司がいる場合、私はIDLEを使用してはならないのはなぜですか?コメントは意味をなさない? – Kirt

答えて

0

私は同じ問題を抱えています。はい、簡単な検索と置換を行うと、この問題が解決されます。しかし、コードを共有するたびにそれを行う必要があります。何らかの形でそれを自動化することについて考えてみたいかもしれません。私は決してそれをしなかった。

2

これはPythonとは関係ありませんが、基礎をなすOSとは関係ありません。 Windowsにテキストファイルを保存するとCRLF改行が発生し、Mac/Unixシステムに保存するとLF改行(および石器時代のMac、CR改行)が発生します。

ファイルの改行形式を維持するためのエディタを使用します。いいえ、メモ帳はありませんが、私が見たエディタはほとんどです。 UltraEditとEditPadProは私が知っているものなので、両方をお勧めします。私はPyDev/EclipseのようなIDEもそれを処理すると確信していますが、試していません。

+0

PC用のIDLEは '\ r \ n'を使用していますが、ワードパッドなどでファイルを開いている可能性があります。私は家に帰るときに少し実験をしなければならないでしょう。 – Kirt

+1

もちろん、IDLEはWindows *上で実行すると '\ r \ n' *を使います。それが私の答えの要点です。テキストファイルを保存するときに実行中のプラットフォームを意識して無視するエディタを使用する必要があります。 –

+0

いいえ、Windows上でIDLEのようです\ – Kirt

1

「\ n」の

実行それあなたが上司にコードを与えるたびに「N \ R \」代わるPythonスクリプトを作成します。

:)

+0

ええ、それは私が考えていたものです... – Kirt

0

このsedワンライナーは、希望行末持つようにPythonスクリプトに変換されます:あなたは、あなたがIDLEボスを使用すべきではないしていると主張することができる場合

sed 's/\r\n/\n/g' <windows_script >unix_script 
関連する問題