我想首先感謝所有那些總是試圖幫助的人。 然後我也想爲語言道歉,因爲英語不是我的主要語言!我的Python代碼涉及循環和文件的行爲困惑
我不知道自從我無法使用我的腳本後,我做了什麼錯誤。
我希望它會從文本文件1('q1.txt')移動到下一個文本文件('q2.txt')。
但它沒有。沒有它留在我或E可能取決於回答問題。
將問題分成文本文件並用「;」分隔。 首先是問題,然後A和B
希望我設法解釋我的問題。 感謝您的幫助!
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# name.py
def questions(fileName):
fileName = open(fileName, 'r')
counter_a, counter_b = 0, 0
for questions in fileName:
lineSplit = questions.split(','); # for every new line, split separtes whit "," for one quastion and two choides
question_string = "%s\n %s\n %s\n \n Answer: " % (lineSplit[0], lineSplit[1], lineSplit[2])
answer = raw_input(question_string).lower()
while answer not in ("a", "b"):
print("Please choose A or B \n")
answer = raw_input(question_string).lower()
if answer == "a":
counter_a += 1
else:
counter_b += 1
#print "A total is %d" % counter_a
#print "B total is %d" % counter_b
if counter_a > counter_b:
print 'Your first personality code is: E'
else:
print 'Your first personality code is: I'
def main():
questions('q1.txt')
questions('q2.txt')
if __name__=='__main__': main()
-
你好,
感謝所有我所收到的答覆。我會盡力解釋。
該腳本從指定的文本文件中檢索問題。這些在每行的文本文件中除以「,」。 問題和答案的例子出現在文本文件中:在一個派對上,你是否與很多人交往?答:包括陌生人,B:與你知道的幾個人互動
每次你選擇A或B,你會得到A + 1或B + 1的「分數」。
一旦所有問題都得到解答,您就可以基於您如何回答信件。這很好。腳本執行此任務沒有問題。
問題是,它不會進一步在函數中,它不會去的第二個文本文件!
也就是說,從q1.txt到q2.txt。 問題('q1.txt') 問題('q2.txt')
得到答案後停止。 你的第一個人格代碼是:E 或 你的第一個人格代碼是:I
我希望這是對我之後的更好的解釋。再次,謝謝你。
「q1.txt」exampel:在一個派對上,你是否與很多人互動?答:包括陌生人,B:與你知道的幾個互動 – akke
「我不知道我做了什麼,因爲我無法使用我的腳本「。你有錯誤嗎?如果是這樣,錯誤是什麼?它正在運行,但不打印預期的輸出?如果是這樣,預期產出是多少,實際產出是多少? – Kevin
真的不能得到你想要做的。當你說它應該從'q1.txt'移動到'q2.txt'時,你是什麼意思? –