2017-10-26 8 views
1
for char in 'python string': 
    if char == '': # 1: problem 
     break 
    print(char, end='') #2: problem 
    if char == 'o': 
     continue 
  • 1が混乱している:私は、この2重引用符 それは結果を示しているとの間にスペースが別の 結果を示していないときの間で単一のスペースを与えているとき。どうして?
  • 2:私はこの間に1つのスペースを与えます。 引用符はスペースです。どうして?
+0

問題1の場合: あなたがスペースを1つ与えている場合は、文字列中の文字のうち** python string **の間のスペースのいずれかに一致しますが、ブロック(#1の問題)にスペースを与えないと、任意の文字やブレークが実行されず、ループ実行が中断することなく継続されます。 –

+0

問題2の場合: print()のend paramを使用すると、終了文字としてそのまま印刷されます。これは、スペースを観察しているスペースを与える理由です。 –

答えて

0

1:

''' 'が異なっています。最初の文字列は空の文字列で、2番目の文字列は空白文字を含む長さ1の文字列です。あなたのfor-loop内での比較は、どちらもtrueを返しません。文字列を反復すると、長さ1の定義による各文字が返されます。したがって、char == ''の比較は常にFalseです。しかし、そこにスペースを入れると、charがフレーズ'python string'のスペースになると、Trueが返されます。

2:print機能へ

endキーワードは、すべての位置引数が印刷された後に印刷するかを定義します。改行を印刷する場合は、デフォルトで'\n'になります。したがって、print('python', 'string', end=' ')を使用すると、文字列python stringが出力されます(末尾に余分なスペースがあります)。

0

終了引数は、印刷されるものの最後に何を追加する必要があるかを定義します。デフォルトでは改行文字( '\ n)または指定された文字になります。

for char in 'python string': 
    print(char) 

p 
y 
t 
h 
o 
n 

s 
t 
r 
i 
n 
g 
にスペースが与えられていない

、または空の文字列は、文字列が何であるかを表示します:シングルスペースで

for char in 'python string': 
    print(char, end ='') 

python string 

、それは各文字に付加されます:

for char in 'python string': 
    print(char, end =' ') 

p y t h o n s t r i n g 

二重スペースの場合:

for char in 'python string': 
    print(char, end =' ') 

p y t h o n  s t r i n g 
関連する問題