qq_41086064 2020-08-29 14:00 采纳率: 0%
浏览 245

python执行时跳过了if 语句

from datetime import datetime
import time
import random
odds = [1,2,3,4,5,6,7,8,9,10,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59 ]
#right_this_minute = time.strftime("%S")
for i in range(5):
#time.sleep(1)
print(time.strftime('%S'))
if time.strftime('%S') in odds:
print("This minute seems a little odd.")
else:
print("Not an old minute.")
'wait_time=random.randint(1,10)'
time.sleep(1)

这是一个简短的python 程序,执行结果和我预期是不一样的,如下执行结果
>>> 

===================== RESTART: /Users/sahanxi/Documents/python/FirstTest.py =====================
14
Not an old minute.
15
Not an old minute.
16
Not an old minute.
17
Not an old minute.
18
Not an old minute.

按我设想的
print("This minute seems a little odd.")
print("Not an old minute.")
应该是会轮流输出的,但是不知道为什么直接跳过if 语句,执行了else,改了好多次都不行。有大哥知道哪里错了么

  • 写回答

1条回答 默认 最新

  • 斯曦巍峨 Python领域新星创作者 2020-08-29 14:42
    关注

    time.strftime('%S')得到的是一个字符串,而列表odds中的元素是整型的,因此条件始终得不到满足,需要将其转化为整型int(time.strftime('%S'))

    评论

报告相同问题?

悬赏问题

  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办