《Python基础教程》(二)——input和input_raw的区别在哪里?

1、input和input_raw的区别

input函数会假设用户的输入是合法的python表达式;换言之,如果是字符串,就必须加上双引号,否则程序会认为是一个变量。如下图所示,input把输入的daniel认为是一个变量名,报错名称daniel的变量未定义。

而input_raw函数,会把所有输入当做原始数据,放入字符串中。作为界面输入,要求用户每次手工输入双引号把字符串括起来是不合常理的,因此,我们应尽量使用input_raw。

《Python基础教程》(二)——input和input_raw的区别在哪里?_第1张图片
input和input_raw函数对比

2、长字符串

要输入一个跨行的、超长的字符串,可以使用三个引号。用三个引号还有一个间接的好处,中间如果要使用单引号或者双引号,都不必再用反斜杠转义了。

《Python基础教程》(二)——input和input_raw的区别在哪里?_第2张图片
三个引号的长字符串

3、原始字符串

反斜杠在字符串中被用作转义字符,例如:\n   \\

如果我们不希望反斜杠被视为转义符,可以在字符串前加上r开头,表示原始字符串

最前面加上r后\n不会被误识别为换行符

需要注意的是,原始字符串不能以\结尾,否则解释器会以为末尾的\" 或者\'是一个转义字符,而实际上我们的输入已经完毕。

《Python基础教程》(二)——input和input_raw的区别在哪里?_第3张图片
原始字符串的末尾是反斜杠

4、Unicode的字符串

Unicode字符串用16位来存储一个字符,可以表示世界上大多数语言的特殊字符。用法就是在字符串前面加上字母u,例如:u'Welcome to China'

你可能感兴趣的:(《Python基础教程》(二)——input和input_raw的区别在哪里?)