사용자로부터 \n
문자를 읽으려고하는데 작동하지 않습니다. 나는 if condition
내부의 코드가 실행되지 않습니다 Enter 키를 누르 그러나파이썬에서 " n"문자 읽기가 실패했습니다
op = raw_input("Hit enter to continue!")
if op == '\n':
#run code
: 여기 내 코드입니다. 그것은 마치 op가 \n
이 아닌 것과 같지만 입력을했습니다.
사용자로부터 \n
문자를 읽으려고하는데 작동하지 않습니다. 나는 if condition
내부의 코드가 실행되지 않습니다 Enter 키를 누르 그러나파이썬에서 " n"문자 읽기가 실패했습니다
op = raw_input("Hit enter to continue!")
if op == '\n':
#run code
: 여기 내 코드입니다. 그것은 마치 op가 \n
이 아닌 것과 같지만 입력을했습니다.
raw_input에서 docstring : "표준 입력에서 문자열을 읽습니다. 후행 줄 바꿈이 제거되었습니다."
if op == '':
#run code
raw_input
입력 끝에서 \n
제거에
그래서 단지 변경. 문자열의 빈칸을 확인하려면 다음과 같이하십시오 : 사용자가 입력을 사용했습니다 ... 그냥 if not op
을 사용하십시오.
또한 예를 들어, 아주 쉽게이 직접 디버깅 할 수 있습니다 :
op = raw_input('enter something: ') # hit only enter
print repr(op) # it's a blank string
+1 디버깅하는 방법을 보여줍니다. 물고기를 가르쳐주는 남자 ... – SethMMorton
아니, raw_input
(파이썬 2.x에서) 또는 input
(파이썬 3.x의) 마지막 개행 문자를 반환하지 않습니다 (\n
) 문자 그게 당신이 이 완료되었음을 알게 된 이후로 입력을 입력 한 것입니다.
당신이 (단순 입력) 빈 사용자 입력을 확인하려는 경우, 당신은
if not op:
# code
또는
if op == "":
# code
if not op:
버전 not
에서 부울 평가 이후 범용 진술 할 수 이 모든 항목에 대해 True
을 반환합니다. -
''
, []
, {}
, ()
False
, 0
, 빈 입력을 확인하는 0.0
가장 좋은 방법은 다음 truthiness 테스트 첫번째 스트립입니다 :
공백은 여전히 True
때문에
if not op.strip():
#code
당신은 스트립()를 호출해야합니다
,549,당신은 사용자 안타는 그냥 사용할 수있는 입력 할 때까지 파이썬 2.x에서 스크립트를 일시 중지하려면 다음
raw_input("Hit enter to continue!")
를 다음에 관계없이 스크립트 코드는 다음과 무엇 이건 계속 입력 무엇.때 스크립트에서 다음
def prompt():
raw_input("Hit enter to continue!")
: 나는 그렇게하는 기능 I 프롬프트 또는 동작을 편집하려면 난 그냥 기능을 편집 할 수 있도록 (예 : "프롬프트"라는 하나)를 만드는 경향이 사용자가 아무 것도 입력 할 때까지 일시 중지하고 싶습니다.
prompt()
'raw_input'은 줄 바꿈 문자를 반환하지 않습니다. – Tim