아래 코드를 사용할 때 형식이 잘못 지정됩니다. 주요 출력 문제 중 하나는/n입니다./n은 실제 텍스트 파일에 나타나지 않지만 파이썬 스크립트에서 보면 "포맷되지 않음"입니다.형식이 잘못된 출력 (Python)
코드 :
def start():
command = raw_input('''
1) Add
2) Look Up
3) See All
4) Delete Entry
''')
if command=="1":
add()
if command=="2":
look_up()
def add():
name = raw_input("What is your name?")
age = str(raw_input("How old are you?"))
salary = raw_input("Enter Salary:")
state = raw_input("State:")
fileObj = open("employees.txt","a")
fileObj.write("Name:"+name+"\n")
fileObj.write('--------------------------\n')
fileObj.write("Age:"+age+"\n")
fileObj.write("Salary:"+salary+"\n")
fileObj.write("State:"+state+"\n")
fileObj.write("--------------------------\n")
fileObj.write("\n\n")
fileObj.close()
print "The following text has been saved:"
print "Name:"+name
print "Age:"+age
print "Salary:"+salary
print "State:"+state
print "Note: This text was assigned to one line."
start()
def look_up():
fileObj = open("employees.txt")
line = fileObj.readlines()
print line
start()
start()
읽고 인쇄의 결과는 다음과 같습니다
[ '\ n을', '이름 : 노아 \ n', '--------- ----------------- \ n ','나이 : 16 \ n ','급여 : 20000 \ n ','주 : NC \ n ','---- ---------------------- \ n ','\ n ','\ n ','이름 : Daniel Rainey \ n ','---- ---------------------- \ n ','나이 : 18 \ n ','급여 : 200000 \ n ','상태 : NC \ n ' '-------------------------- \ n', '\ n', '\ n', '이름 : fdadas \ n', ' -------------------------- \ n ','나이 : 343 \ n ','급여 : 344433 \ n ','주 : NC \ n ','-------------------------- \ n ','\ n ','\ n ']
열려있는 모든 파일을 항상 .close()로 닫아야합니다. 그렇지 않으면 가비지 컬렉터에 따라 파일이 업데이트되지 않는 것과 같이 실제로는 모호한 버그가 나타납니다. – vz0