鱼C论坛

 找回密码
 立即注册
查看: 2103|回复: 5

[已解决]请大神帮解释一下

[复制链接]
发表于 2020-12-20 22:27:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
下面这段代码中n[start] == n[end] ,为什么可以这样写?
def is_palindrome(n, start, end):
        if start > end:
                return 1     
        else:
                return is_palindrome(n, start+1, end-1) if n[start] == n[end] else 0
        
string = input('请输入一串字符串:')
length = len(string)-1

if is_palindrome(string, 0, length):
        print('"%s"是回文字符串!' % string)
else:
        print('"%s"不是回文字符串!' % string)
最佳答案
2020-12-20 23:31:45
根据索引位置获取字符串中的字符:字符串[索引位置]
例如:
s = 'abcdefg'
print(s[2])  # 得到c
print(s[3])  # 得到的是d
就是这么个意思。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-20 22:33:22 | 显示全部楼层
字符串可以加索引获取对应位置字符
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-20 23:31:45 | 显示全部楼层    本楼为最佳答案   
根据索引位置获取字符串中的字符:字符串[索引位置]
例如:
s = 'abcdefg'
print(s[2])  # 得到c
print(s[3])  # 得到的是d
就是这么个意思。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-21 12:10:35 | 显示全部楼层
本帖最后由 _Konglong 于 2020-12-21 12:14 编辑

都搞懂了三元操作符 没道理问字符串索引的啊 我就假设你在问三元操作符了 举个栗子 print("1") if 1 or 0 else print("0")   #输出 1   在举个栗子 print("1") if 1 and 0 else print("0") #输出 0
第一个栗子就相等于
if 1 or 0:
        print("1")
else:
        print("0")
第二个栗子也只是 or 变成了 and
就是 中间判断 为真执行左边 为假执行右边
is_palindrome(n, start+1, end-1) if n[start] == n[end] else 0
这段代码的意思就是 如果字符串第一位和最后一位是一样的 就在执行多一次函数并改变start和end的值就是判断第二位和倒数第二位是不是一样的  如果不是就返回0 代码下面的 if一接收到了0 (0==False) 就会进入else 然后就会打印 不是回文联!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-21 22:25:34 | 显示全部楼层
_Konglong 发表于 2020-12-21 12:10
都搞懂了三元操作符 没道理问字符串索引的啊 我就假设你在问三元操作符了 举个栗子 print("1") if 1 or 0 e ...

多谢指教
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-21 22:26:23 | 显示全部楼层
塔利班 发表于 2020-12-20 22:33
字符串可以加索引获取对应位置字符

多谢指教
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 21:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表