txt 파일을 반복하는 코드를 작성하려고하는데 출력 할 줄만 가져옵니다.루프 (파이썬)에서 next()를 사용하여 다음 줄을 가져올 수 없습니다.
텍스트 파일과 같이 보일 것입니다 : 등등
mimi
passwordmimi
mimi johnson
somejob
joji
passwordjoji
jojo
somejob
john
passwordjohn
jonathan
somejob
....
하고 있습니다. 이 텍스트 파일은 기본적으로 사용자 정보 (로그인 용)를 포함합니다. 나는 모든 사람의 사용자 이름을 출력하고 실제 이름 (예 : mimi 및 mimi johnson)을 만들어야합니다. 나는 현재 사용자의 정보 (이 예에서 : joji) 인쇄하지 않으 : * 나는이 프로그램을 실행할 때 내가 두 번째 인쇄 어떤 이유로
username="joji"
file=open("username.txt","r")
x=file.readlines()
x=[item.rstrip('\n') for item in x]
x=iter(x)
for line in x:
if line==username:
next(x,None)
next(x,None)
next(x,None)
else:
print line + " username" ****username should print out. ex:mimi or john
next(x,None)
print line +" real name ****real name should print out. ex: mimi johnson or jonathan
여기
은 내 코드입니다 *** 나는 사용자 이름을 두 번 출력합니다. (그래서 예 :?
mimi username
mimi real name
mimi johnson username
mimi johnson real name
john username
john real name
jonathan username
jonathan real name
....
는 이유는 누군가가 난 정말 감사하게 될 거라고 나를 도울 수 있다면
mimi username
mimi johnson real name
john username
jonathan realname
...
내가 파이썬을 얻을 해달라고 인쇄해야 어떤 다른 임을 열 수도 있습니다. 제안은이 작업을 수행하는
편집을 ::: 난이 결과 인 제안과 변경을 시도 :.
코드의새로운 블록 :
else:
print line + "username"
line =next(x,None)
print line
이 새로운 결과입니다 :
mimi username
passmimi real name
mimi johnson username
somejob real name
john username
passjohn real name
jonathan username
somejob real name(***im assuming this one is from john's job)
:/그 일을하지 무엇을 그 가정
에 나는이 파일을 구문 분석하는 정규식을 사용하는 것이 좋습니다 것입니다
'next()'를 호출해도'line'의 값은 변경되지 않습니다. –
그렇지 않습니까? 그러면 가장 좋은 방법은 무엇이겠습니까 – harekuin
이 경우에 'next'의 반환 값을 캡처해야한다고 생각합니다. 예 : 'line = next (x)' –