任何程序都会用到变量。变量通常用来存放临时数据,例如在一个计算成绩的程序中,会声明多个变量来存放语文、数学、英语等科目的成绩。 应用程序可能要处理五花八门的数据类型,所以有必要将数据加以分类,给不同的数据类型分配不同大小的内存,这样才能使变量达到最佳的运行效率。
变量,顾名思义是一个随时可能会改变内容的容器的名称,就像家中的收藏箱可以放入各种不同的东西。在程序中使用变量时,当开发人员使用一个变量,应用程序就会配置一块内存给此变量使用,以变量名称作为这块内存的标识,系统会根据数据类型来决定所分配的内存的大小,然后开发人员就可以在程序中把各种值存入该变量中。 Python变量不需要声明就可以使用,语法为:
变量名称 = 变量值例如,变量score的值为80:
score = 80使用变量时不必指定数据类型,Python会根据变量值设定数据类型,例如上述score的数据类型是整型(ine),又如:
fruit = "香蕉" # fruit的数据类型为字符串Python注释符号 “#”是Python的注释符号,“#”符号至本行末的代码作为程序注释不会执行,程序会跳到下一行代码执行。根据Python的代码规范,在#后要加一个空格。
如果多个变量具有相同变量值,可以一起制定变量值。例如变量a,b,c的值皆为20,则可通过下列方式给变量赋值:
a = b = c = 20我们还可以在同一行指定多个变量,变量之间用“,”分隔。例如变量age的值为18,name的值为“林大山”:
age = 18, name = "林大山"如果变量不再使用,可以将变量删除(释放)以节省内存。删除变量的语法为:
del 变量名称例如,删除变量score:
del score为变量命名必须遵守一定规则,否则在程序执行时会产生错误。Python变量的命名规则为:
变量名称的第一个字母必须是大小写字母、’_'或中文。只能由大小写字母、数字、‘_’、中文组成变量名称。英文字母大小写视为不同变量名称。变量名称不能与Python内建的保留字相同。Python的保留字有: 123456acosandarrayasinassetatanbreakclassclosecontinuecosDatadefdeleelifelseexceptexecexpfabsfloatfinallyfloorforfromglobalifimportininputintislambdaloglog10notopenorpasspiprintraiserangereturnsinsqrttantrytypewhilewritezeros虽然Python 3.x的变量名称支持中文,但建设最好不要使用中文作为变量名,这样不但在写程序时输入麻烦,而且会降低程序的可移植性。 下表示一些错误变量名称错误的示例:
变量名称说明7eleven第一个字符不能是数字George&Mary不能包含特殊字符“&”George Mary不能包含空格符ifPython的保留字Python的数值类型又分为整型(int)及浮点型(float)。整型是指不含小数点的数值,浮点型则指包含小数点的数值,例如:
num1 = 34 # 整型 num2 = 67.83 # 浮点型若整型数值要更改为浮点型,可在赋值时为其加上小数点,例如:
num3 = 34.0 # 浮点型Python的布尔类型(bool)只有两个值:True及False(注意T和F都是大写)。这种变量一般用在条件运算中,程序根据布尔变量的值来判断进行何种操作。例如:
flag = TruePython的字符串类型(str),是指变量值用一对双引号(“”)或单引号(‘’)包起来的变量,例如:
str1 = "这是字符串"如果字符串需要包含引号本身(双引号或单引号),可使用另一种引号包住字符串,例如:
str2 = '小明说:"你好!"' # 变量值为“小明说:"你好!"”若字符串中需要包含特殊字符,如制表符、回车符等,可在字符串中使用逃逸符:逃逸符是以\开头、后面跟着一定格式的字符来表示特定含义的特殊字符,下表为Python的逃逸字符集:
逃逸符意义逃逸符意义’单引号“ ’ ”"双引号“ " ”\反斜杠“ \ ”\n换行\r光标移到行首\tTab键\v垂直定位\a响铃\b后退键(BackSpace)\f换页x以十六进制表示字符\o以八进制表示字符print命令用来输出指定对象的内容,语法为:
print(对象1[,对象2,..., sep=分隔字符, end=终止符]) print("多吃水果") # 多吃水果 print(100, "多吃水果", 60) # 100 多吃水果 60 print(100, "多吃水果", 60, sep="&") # 100&多吃水果&60,下次输出在下一行 print(100, 60, sep="&", end="") #100&60, 下次输出在同一行print命令支持参数格式化功能,即使用“%s”代表字符串,“%d”代表整数,“%f”代表浮点数,其语法格式为:
print(对象 % (参数行))例如,用参数格式化方式输出字符串及整数:
name = "林小明" score = 80 print("%s的成绩为%d" % (name, score)) # 林小明的成绩为80通过参数格式化的方法,可精确控制输出位置,让输出的数据整齐排列,例如:
%5d:固定输出为5个字符的宽度,若输出少于5位,则会在数字左边填入空格(若数值大于5位,则会全部输出)。%5s:固定输出为5个字符的宽度,若输出少于5个字符,则会在字符串左边填入空格(若字符串大于5个字符,则会全部输出)。%8.2f:固定输出8个字符宽度(含小数点),其中小数输出为2位。若整数部分少于5位(8-3=5),会在左边填入空格符;若小数少于2位,会在右方填入“0”。例如,用格式化输出的方法输出23.8:
price = 23.8 print("价格为%8.2f" % price) # 价格为 23.80,左边填入3个空格,右边填一个0我们还可用字符串的format方法对字符串的输出进行格式化。用一对大括号“{}”表示参数位置,语法为:
print(字符串.format(参数行))例如,用字符串的format方法输出下列字符串及整数:
name = "林小明" score = 80 print("{}的成绩为{}".format(name, score)) # 林小明的成绩为80第一对大括号代表name变量,第二对大括号代表score变量。
通过type方法,可以取得对象的数据类型。如果用户不能确定某些对象的数据类型时,可用type命令进行确认。
