我正在完成Python MasterClass挑战程序1.我了解从解决方案到最后一行的所有内容。我们必须确定有效/无效的IP地址中的片段和段的长度。
我知道这将准确地显示片段的数量和段的长度,但是为什么最终行不必依靠for循环呢?我该如何从稀薄的空气中调用任意的" x"?它没有参考任何变量或str?我正在尝试了解系统的思维过程。
我的代码如下:
ip=input('Please enter your ip address.')
numsegment = 1
lensegment = 0
for x in ip:
if x == '.':
print('Segment {} contains {}
characters.'.format(numsegment,lensegment))
numsegment+=1
lensegment=0
else:
lensegment+=1
if x != '.':
print('Segment {} contains {} characters.'.format(numsegment,lensegment))
python for
循环使用分配。这有一些副作用,其中之一是,即使在循环块退出后,用于迭代的名称也将存储上次迭代期间的值。
for num in [1, 2, 3, 4, 5]:
pass
print(num)
# 5