python - 有没有办法获取函数的运行次数
问题描述
# Collatz Conjecture Program
from time import perf_counter_ns
from time import sleep
it_count = 0
n = 0
def Select_Number():
print("")
print("On a cooldown for 5 seconds")
sleep(1)
print("On a cooldown for 4 seconds")
sleep(1)
print("On a cooldown for 3 seconds")
sleep(1)
print("On a cooldown for 2 seconds")
sleep(1)
print("On a cooldown for 1 seconds")
sleep(1)
print("On a cooldown for 0 seconds")
sleep(1)
sn = 1
if sn == 0:
print("This number is invalid.")
print()
print()
Select_Number()
else:
sn += 1
Calculate(sn)
def Auto_Select_Number():
print("")
print("On a cooldown for 5 seconds")
sleep(1)
print("On a cooldown for 4 seconds")
sleep(1)
print("On a cooldown for 3 seconds")
sleep(1)
print("On a cooldown for 2 seconds")
sleep(1)
print("On a cooldown for 1 seconds")
sleep(1)
print("On a cooldown for 0 seconds")
sleep(1)
if sn == 0:
print("This number is invalid.")
print()
print()
Select_Number()
else:
sn += 1
Calculate(sn)
def Calculate(n):
global it_count
it_count = 0
start = perf_counter_ns()
while n != 1:
if n % 2:
n = (n * 3 + 1)
#print(n) #Prints All Numbers (Slows Program Speed)
it_count += 1
else:
n = (n // 2)
#print(n) #Prints All Numbers (Slows Program Speed)
it_count += 1
end = perf_counter_ns()
print("The number has reached " + str(n) + " with only " + str(it_count) + " iterations! (Time taken: " + format(
end - start) + " nanoseconds.)")
print()
Select_Number()
Select_Number()
你好,所以我试图创建一个 collatz 猜想程序并且我成功了,但我想让它使输入变量 (sn) 从 1 开始,并且每次程序运行时输入变量 (sn) 增加一。但是我尝试了很多次,但都失败了。这是工作版本,但我无法弄清楚的主要问题是找出这是程序运行的第二次或更多次,并将其添加到 sn.
解决方案
推荐阅读
- azure - Azure Function App 上的问题发布功能
- php - 如果 cookie 存在读取并将其值设置为 Woocommerce 中的变量
- firebase - Firebase 没有部署我的功能,说它不是云功能
- python - 如何从现有字典有选择地创建字典?
- angular - 移动 Angular Spring Boot 应用程序时出现 CORS 错误
- javascript - 使用主动登录获取 API 数据
- java - N个盒子堆叠问题的Java解决方案。你认为有更好的算法吗?
- java - 我无法打印出 0 。有人能告诉我为什么吗?
- c++ - 在本地 ide 中运行时,所有输出都是正确的,但是在 codeforces 中提交时会抛出错误
- matlab - 我如何从非零元素创建矩阵,保持新矩阵大小与原始大小相同