playground的这个提示功能是有这种bug的。所以语句已经提示有错了,右侧的显示输出就可以不理会了。
提示的错误是程序语言根据编译原则执行出来的,所以在以后的编程学习中,你会经常遇到编译器告诉你的错误和你的实际错误不相符的情况。有经验的程序员,尤其是熟悉编译原理的程序员,可以很容易地根据编译器提示找到错误的根源,但是初学者会经常很糊涂,这是正常的。所以,不建议和编译器较劲,如果编译器报错,那么返回到教程中,看看报错的语句哪里写错了,而不要过度研究编译器的提示信息。
在这里,你说的很对,区间运算符只有两种类型。
你写<..,编译器无法识别,就会认为你首先想使用<,然后告诉你,<不是一个单目运算符,所以只是左边有一个数不够;同时告诉你,..这个符号不存在。
你写<.<,编译器无法识别,就会认为你首先想使用<,然后告诉你,<不是一个单目运算符,所以只是左边有一个数不够;同时告诉你,.<这个符号不存在。
你看,编译器根本不了解你是想尝试<..和<.<,来表示另外两种区间类型。让计算机了解人的思维还有很长的路要走啊:)
因为元组中没有一个名字叫做i的分量。在这里,.i中的i不会被替换成数字。
事实上,元组不支持for in循环,因为本质上,元组不是一个序列。如果你构建的数据是一个序列,请使用数组。把元组想成是简单的结构体,包装一些信息。课程里的例子都很好——比如一个点的坐标,或者网络连接状态的返回值。