2017-12-21 6 views
3

私はtxtファイルを読むためにpythonを使います。複数行のPythonで文字列の空白を削除するにはどうすればよいですか?

私は左から空白を削除するために.lstripを使用しようとしましたが、最初の行から空白を削除することしか管理していません。私が使用したときに、私は何を得る

puzzle = puzzle.replace('',' ') 

x m f y c x v t l j l q b b y b k o u m j q w b t 
c a u b m e k n b e y d q m c n z y j p v r a n k 
a q a c t i v e x n y v w d v c o s h o y a o h g 
p a g h z k c t u d p t j d p h s z t p r h t t l 
s b s n a k j w q b o u f t m g n j q b t l i n u 
t s e w o h v o b d s d u q j i f f k y y l o d o 
o u k w w e f r o y a m a p m l r r p v d o l o p 
c q k f x t l k s j v t m t r s b y c m q r r r i 
k f e r v l q i d q a x a o a n f q j l m c p j h 
y o y y w r b p f c j l f b c b b c o e c s p w l 
t w b x e t y u y u f v v m a u a w j m b w l q h 
t x o k d e x m d b t g v h p s v s q t m l j d x 
d c a t e n r e h t e o x q d g e u e l j t r r n 
j a r t e q v t x e j f s q d d k b u h c y s f q 
h p d r o w s s a p x t r x h p d x c d h i c o n 

私はこれを使用する:テキストファイルで

print (puzzle.lstrip())

x m f y c x v t l j l q b b y b k o u m j q w b t 
c a u b m e k n b e y d q m c n z y j p v r a n k 
a q a c t i v e x n y v w d v c o s h o y a t j d p h s z t p r h t t l 
s b s n a k j w q b o u f t m g n j q b t l i n u 
t s e w o h v o b d s d u q j i f f k y y l o d o 
o u k w w e f r o y a m a p m l r r p v d o l o p 
c q k f x t l k s j v t m t r s b y c m q r r r i 
k f e r v l q i d q a x a o a n f q j l m c p j h 
y o y y w r b p f c j l f b c b b c o e c s p w l 
t w b x e t y u y u f v v m a u a w j m b w l q h 
t x o k d e x m d b t g v h p s v s q t m l j d x 
d c a t e n r e h t e o x q d g e u e l j t r r n 
j a r t e q v t x e j f s q d d k b u h c y s f q 
h p d r o w s s a p x t r x h p d x c d h i c o n 

代わりに私は左からすべての空白を削除したいです取得する:

x m f y c x v t l j l q b b y b k o u m j q w b t 
c a u b m e k n b e y d q m c n z y j p v r a n k 
a q a c t i v e x n y v w d v c o s h o y a o h g 
p a g h z k c t u d p t j d p h s z t p r h t t l 
s b s n a k j w q b o u f t m g n j q b t l i n u 
t s e w o h v o b d s d u q j i f f k y y l o d o 
o u k w w e f r o y a m a p m l r r p v d o l o p 
c q k f x t l k s j v t m t r s b y c m q r r r i 
k f e r v l q i d q a x a o a n f q j l m c p j h 
y o y y w r b p f c j l f b c b b c o e c s p w l 
t w b x e t y u y u f v v m a u a w j m b w l q h 
t x o k d e x m d b t g v h p s 

あなたの助けをありがとう!!!!

+0

投稿した入力ファイルに空白がまったく入っていないようです – RomanPerekhrest

+1

なぜこれを最初に実行しますか? : 'puzzle = puzzle.replace( ''、 '')' – quamrana

答えて

0

あなたはnewlineによってspace続いnewlineのすべてのインスタンスを置き換えることができます。

for line in txt.splitlines(): 
    print(' '.join(line)) 

:あなたがそのような望ましい結果を印刷することができますTXT

txt = """xmfycxvtljlqbbybkoumjqwbt 
caubmeknbeydqmcnzyjpvrank 
aqactivexnyvwdvcoshoyaohg 
paghzkctudptjdphsztprhttl 
sbsnakjwqbouftmgnjqbtlinu 
tsewohvobdsduqjiffkyylodo 
oukwwefroyamapmlrrpvdolop 
cqkfxtlksjvtmtrsbycmqrrri 
kfervlqidqaxaoanfqjlmcpjh 
yoyywrbpfcjlfbcbbcoecspwl 
twbxetyuyufvvmauawjmbwlqh 
txokdexmdbtgvhpsvsqtmljdx 
dcatenrehteoxqdgeueljtrrn 
jarteqvtxejfsqddkbuhcysfq 
hpdrowssapxtrxhpdxcdhicon""" 

から始まっ

puzzle = puzzle.replace('\n ','') 
2

をあなたが印刷したくなければ、よuが変数に結果を格納するリスト内包を使用することができます。

result = [' '.join(line) for line in txt.splitlines()] 
+0

私は彼がすべての空白を空白文字を追加する代わりにすべての空白を削除したいと思うと思います。 – fechnert

+2

@fechnertこれは、_置き換えの代わりに_desired_空白を追加する代わりに_ ( ''、 '') 'ではなく、各行の先行スペースを削除するためのものではありません。 –

0

私は、これがうまくいくかもしれないと仮定:

結果= [filehandle.readlinesにおける行のrow.lstrip()()]

関連する問題