Python 通过单词循环,字母评估为False?
下面是一个类示例中的代码。 困扰我的是这一部分:Python 通过单词循环,字母评估为False?,python,string,loops,boolean,Python,String,Loops,Boolean,下面是一个类示例中的代码。 困扰我的是这一部分: up = False for i in x: if up: i=i.upper() 我真的不明白一个单词中的一个字母怎么会被反复计算为False或True 以下是整个问题: def mirror(x): return x+x[::-1] def steps(x): result="" x=x.lower() up=False for i in x: if up: i=i.upp
up = False
for i in x:
if up:
i=i.upper()
我真的不明白一个单词中的一个字母怎么会被反复计算为False或True
以下是整个问题:
def mirror(x):
return x+x[::-1]
def steps(x):
result=""
x=x.lower()
up=False
for i in x:
if up:
i=i.upper()
result+=i
up = not up
return result
print(steps("jabberwocky"))
print(steps(mirror("CAT")))
steps函数所做的是: 1将所有x字符设置为小写 2将变量初始设置为False x中的每个字母对应3 如果变量up为true,则将该字母大写 把那个字母附加到结果后面 如果为true=>false//如果为false=>true,则设置为相反的值
4返回结果在字符串中的每个字符上都有一个循环。up是一个布尔变量,最初设置为False。所以一开始你有
if False:
i=i.upper()
在for循环结束时,将up设置为True up=not up始终切换布尔值-False变为True,True变为False。因此,for循环的第二次迭代
if True
i=i.upper()
此循环将接收一个字符串,并且每隔一个字符都将大写:
>>> print(steps("jabberwocky"))
jAbBeRwOcKy
if语句中计算的变量为up,而不是i中存储的任何一个字母。这是什么语言?它看起来像python,但你真的应该告诉我们。理想情况下,通过标记。或者我们应该将其视为伪代码?@JanDvorak抱歉,这是Python。该网站的新手,我不知道-谢谢:@JanDvorak Python非常可读,看起来像伪代码。