3-1.
标识符。为什么Python中不需要变量名和变量类型声明?
【答案】这部分答案是网上找到的。
Python语言中对象的类型和内存都是运行时确定的。在创建也就是赋值时,解释器会根据语法和右侧的操作数来决定新对象的类型。
因为变量在第一次赋值的时候就被自动声明了。Python是无类型的语言。
Python既是动态类型语言(因为它不使用显示数据类型声明,在运行期间才去确定数据类型),又是强类型语言(因为只要一个变量获得了一个数据,它就一直就是这个数据的数据类型了)。

3-2.
标识符。为什么Python中不需要声明函数类型?
【答案】这部分答案是网上找到的。
函数没有定义返回的数据类型。 Python不需要提定返回值的数据类型;甚至不需要指定是否有返回值。实际上,每个Python函数都返回一个值;如果函数执行过return语句,它将返回指定的值,否则将返回None(Python 的空值)。

3-3.
标识符。为什么应当避免在变量名的开始和结尾使用双下划线?
【答案】
因为变量名__xxx__对Python来说有特殊含义,对于普通的变量应当避免这种命名风格。

3-4.
语句。在Python中一行可以书写多个语句吗?
【答案】
可以。

3-5.
语句。在Python中可以将一个语句分成多行书写吗?
【答案】
可以。

3-6.
变量赋值。
(a)赋值语句x, y, z = 1, 2, 3会在x、y、z中分别赋什么值?
(b)执行z, x, y = y, z, x后,x、y、z中分别含有什么值?
【答案】
>>> x, y, z = 1, 2, 3
>>> z, x, y = y, z, x
>>> x, y, z
(3, 1, 2)
>>>

3-7.
标识符。下面哪些是Python合法的标识符?如果不是,请说明理由。在合法的标识符中,哪些是关键字?
int32  40XL  $aving$  printf  print
_print  this  self  __name__ 0X40L
bool  true  big-daddy 2hot2touch type
thisIsn'tAVar thisIsAVar R_U_Ready Int  True
if  do  counter-1 access  -
【答案】
Python标识符字符串规则和其他大部分用C编写的高级语言相似:
第一个字符必须是字母或下划线“_”;剩下的字符可以是字母数字或下划线;大小写敏感。
int32、printf、_print、this、self、__name__、bool、true、type、thisIsAVar、R_U_Ready、Int、True、do、access是Python合法的标识符。
print、if、是Python合法的标识符且是关键字。
40XL、$aving$、0X40L、big-daddy、2hot2touch、thisIsn'tAVar、counter-1、-不是Python合法的标识符。

 

posted on 2011-01-17 01:49  balian  阅读(2008)  评论(2编辑  收藏  举报