這是我的代碼,它需要一個文件中的ISBN號碼,然後使用兩個部分和並檢查它是否可以被11整除以確保它是有效的。我的問題是,我應該寫入一個文件我剛測試的代碼,然後是否有效或無效。我不是很瞭解文件,這就是爲什麼我要求一些幫助。寫入文件的文本應該是這樣的:ISBN號碼寫入文件
0-1315-2447-X有效
0-89237-010-9無效
def main():
in_file = open('isbn.txt','r')
for line in in_file:
print(line)
s1 = list(line)
in_file.close()
hyphen = '-'
for i in s1:
if i == hyphen:
s1.remove (hyphen)
print (s1)
partial_sums(s1)
def partial_sums(s1):
lst1 =[]
sum = 0
for i in range(len(s1)):
if i == (len(s1) -1) and s1[i] == "X":
sum = sum + 10
else:
sum = sum + int(s1[i])
lst1.append(sum)
print(lst1)
sum_of_s1(lst1)
def sum_of_s1(s2):
lst2 = []
sum = 0
for i in s2:
sum += i
lst2.append(sum)
print(lst2)
check(lst2[-1])
def check(value):
if value % 11 ==0:
print("valid")
else:
print("invalid")
main()
不要使用'sum'作爲變量名,因爲Python有一個內置方法['sum()'](https://docs.python.org/2/library/functions.html#sum) 。 –