是否可以保存一个整数以供再次使用?
Is it possible to save an integer to use again?
我刚开始学习 Python,我 运行 遇到了一个问题,我想保存一个整数,以便在程序关闭时再次使用。我一直在四处寻找,但找不到任何相关信息。到目前为止我写的代码:
from __future__ import print_function
collatz = open("collatz.txt", "w+")
Num = 5
calcNum = Num
while Num>0:
if calcNum % 2 == 0:
calcNum /= 2
print(calcNum, file = collatz)
else:
calcNum = (calcNum*3)+1
print(calcNum, file = collatz)
if calcNum == 4:
print("The infinite loop has been reached, moving on to the next number.", file = collatz)
Num += 1
print(Num, file = collatz)
calcNum = Num
我试图将 Num
保存到另一个文件中,然后用它来保存它。但是,它保存为字符串而不是 int
,因此我尝试使用 int()
,但仍然没有帮助。
在此先感谢您的帮助。
使用 pickle 库。
import pickle
num = 4
pickle.dump(num, "num_file.txt")
loaded_num = pickle.load("num_file.txt")
您可以使用 JSON 然后无论是 Python 还是读入的其他语言都没有关系 运行s 与您的部分结果(不限于 int ).这是一个程序示例,该程序(效率低下)计算了一些素数,并在每次 运行:
时从停止的地方开始
import json
from math import factorial
from os.path import isfile
FILE_NAME = "number.json"
def is_prime(x): # not efficient, but short (by @aikramer2)
return factorial(x - 1) % x == x - 1
if isfile(FILE_NAME):
with open(FILE_NAME) as handle:
number = json.load(handle)
else:
number = 2 # no seed, begin anew
print(number)
for number in range(number + 1, number + 10):
if is_prime(number):
print(number)
with open(FILE_NAME, "w") as handle:
json.dump(number, handle)
我刚开始学习 Python,我 运行 遇到了一个问题,我想保存一个整数,以便在程序关闭时再次使用。我一直在四处寻找,但找不到任何相关信息。到目前为止我写的代码:
from __future__ import print_function
collatz = open("collatz.txt", "w+")
Num = 5
calcNum = Num
while Num>0:
if calcNum % 2 == 0:
calcNum /= 2
print(calcNum, file = collatz)
else:
calcNum = (calcNum*3)+1
print(calcNum, file = collatz)
if calcNum == 4:
print("The infinite loop has been reached, moving on to the next number.", file = collatz)
Num += 1
print(Num, file = collatz)
calcNum = Num
我试图将 Num
保存到另一个文件中,然后用它来保存它。但是,它保存为字符串而不是 int
,因此我尝试使用 int()
,但仍然没有帮助。
在此先感谢您的帮助。
使用 pickle 库。
import pickle
num = 4
pickle.dump(num, "num_file.txt")
loaded_num = pickle.load("num_file.txt")
您可以使用 JSON 然后无论是 Python 还是读入的其他语言都没有关系 运行s 与您的部分结果(不限于 int ).这是一个程序示例,该程序(效率低下)计算了一些素数,并在每次 运行:
时从停止的地方开始import json
from math import factorial
from os.path import isfile
FILE_NAME = "number.json"
def is_prime(x): # not efficient, but short (by @aikramer2)
return factorial(x - 1) % x == x - 1
if isfile(FILE_NAME):
with open(FILE_NAME) as handle:
number = json.load(handle)
else:
number = 2 # no seed, begin anew
print(number)
for number in range(number + 1, number + 10):
if is_prime(number):
print(number)
with open(FILE_NAME, "w") as handle:
json.dump(number, handle)