s = "aB:cD"
def transform_string():
string_Length = len(s)
pos_colon = s.find(":")
lowerCase = s.lower()
upperCase = s.upper()
string_partA = 0 + pos_colon
res = lowerCase[:string_partA] + upperCase[string_partA:]
return res
print(transform_string())
print()
该代码的意思是让字符串中冒号前的部分小写,冒号后的部分大写。所以我的问题是什么是
res = lowerCase[:string_partA] + upperCase[string_partA:]
其中的括号是for,或更明确地说,我们什么时候可以使用它?这个语法有名字吗?我看到其他人在使用它,我可以从逻辑上理解它是如何工作的以及它的作用,我只是想知道它是否有名称或语法限制等等…
我第一次尝试使用for循环(如果有人能告诉我为什么这是错误的,我会很感激,我知道它没有上面的代码那么有效(:
s = "aB:cD"
def transform_string():
y = len(s)
x = s.find(":")
for s in range(0, x):
first_half = s.lower()
for s in range(x, y):
second_half = s.upper()
res = f"{first_half}+{second_half}"
return res
print(transform_string())
print()
谢谢!
错误的原因是您想要(下(或(上((整数(。当你把S置于痛苦中时,你的S等于Integer第一次(S=0(、第二次(S=1(依此类推,直到结束但是上面的代码通过索引找到了哪个部分应该是(下(还是(上(同时,当您想要获得(Lens(时,因为(S(是在函数外定义的,所以无法计算(Len(。在函数内部写入(全局s(或将(s(作为函数的输入就足够了。