从这节课开始,示例和代码输入框将会有 打开控制台 和 可见化这两个按钮。使用它们来帮助你调试和探索代码。
在Hello, World! 程序中 我们看到Python可以重复一句话并返还给我们。我们同样见到了几个数字运算的例子。数字和句子从根本上来说是不同的对象,当你试图把它们混淆在一起时,Python就会出错:
你可以看到,我们收到了一个错误消息,max
的两个实参不是同一种类型。这个错误消息给我们接下来学习的内容做了一个很好的开头:
"Hello, World!"
是一个字符串,在Python中是以str
显示的。一个字符串是一个包含数字、字母和符号的序列;我们将会在7A课程中深入的了解它们。35
是一个整数值,在Python中是以int
显示的。一个整数就意味着整个的数字;例如,42,-12和0都是整数。
在编程中,使用不正确的对象 类型是导致错误的一个常见原因。这就像你试图喝一个三明治:你并不能做到,因为你只能喝液体,但三明治是一个固体。
你可以调用type
函数来确定一个对象的类型。
(class
(类)和type
(类型)的意义相似。) 上面的几个例子诠释了数字中的两种不同类型,我们前面提到的int
和用来存储十进制数的float
(浮点数)。你可以将float
理解为不精确或近似值(我们将会在7B中详细解释)。你可以混合float
值和int
值,他们混合的结果会是一个新的float
。
事实上,Python在碰到混合一个float
和int
的情况时,会自动将int
转换成float
,然后用两个float
值运行后面的程序。
选择题练习: 浮点
如果我们在上面的程序中将
1.2
改变为1.5
,第一行输出会是什么?正确!我们必须在这里解释两个因素,来看为什么
z
被打印为3.0
。
- 计算
x * y
是混合了一个int
和一个float
,Python会把他们当成两个浮点数
,并返还z
为一个浮点数
。
z
的数学值是1.5乘以2,为3,但却被保存为不准确的小数形式——浮点数
。当Python打印任何浮点数
时,即使它的值是一个整数,它也会被打印为以
结尾来表明它是一个不准确的值。.0
y
的值和类型从未被改变。
在编程中,你会经常需要改变数据的类型。就像你可以用搅拌机将三明治从固体转变成液体一样,你也可以使用类型转换函数将数据从一种类型转换到另一种类型。在写目标类型就像是写一个调用函数的方程一样,比如:
x = float("3.4") print(x-1)将字符串
"3.4"
变成浮点数3.4
,然后打印出2.4
。如果不使用类型转换程序就会崩溃, 因为字符串减去一个数字不符合逻辑。
有些时候,Python允许你使用数学运算符号混合一个字符串和数字。语句 会打印出hotshots 。Python的规则是如果让一个字符串乘以一个整数,那么它的实际意义就是在这个字符串后复制相应数量的拷贝。我们会在后面看到“两个字符串相加”在Python中也是可行的。 |
不同的类型转换会有不同的表现:
- 将
浮点数
转换成整数
会使小数点后的信息丢失,例如int(1.234)
会返还1
,int(-34.7)
会返还-34
。 - 如果
字符串
的格式和整数
不一样, 那么字符串转换成整数会造成错误。例如int("1.234")
会造成错误。 - 如果
字符串
不是一个数,那么将其转换成浮点数
会造成错误。例如float("sandwich")
会造成错误。
类型转换的一个常见用处是我们将会看到的转换用户输入,从一个字符串转换到数字类型。这里是一个快速的演示。
下面是这节课最后一个练习。
因为现在有很多的编辑命令,有的已经搬进标记为更多动作的菜单中。 |
完成后,请前往下一课。