day2 回文数

思考

针对python中for循环的问题,又因为比较时需要取原字符串和反转字符串的值,所以我想到了用函数生成器的办法


代码2

string=input("请输入数字:  ")
string_length=len(string)
string_reverse=string[::-1]
count=0
def get1(str):
  for i in str:
    yield i
def get2(str):
  for j in str:
    yield j
while count<string_length:
  f1=get1(string)
  f2=get2(string_reverse)
  f1.__next__()
  f2.__next__()
  if f1.__next__() != f2.__next__():
    print(f"{string}不是回文数")
    exit()
  count=count+1

print(f"{string}是回文数")

疑问:pycharm上测试并无问题 ,但leetcode测试有问题


代码一二次调试

针对代码一上次的问题,我发现break是直接结束内层循环,所以再次来到内层循环就会重置。

string = input("请输入数字:  ")
string_length = len(string)
string_reverse = string[::-1]
for i in string:
    for j in string_reverse:
        if int(i) != int(j):
            print(f"{string}不是回文数")
            exit()
print(f"{string}是回文数")

疑问:pycharm上测试并无问题 ,但leetcode测试有问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值