变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
Python中的变量赋值不需要类型声明。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。例如:
#!/bin/evn python #-*- coding:utf-8 -*- #Author:Anliu name = ‘anliu jiang‘ age = 18 salary = 0.001 print(name,age,salary)
Python允许你同时为多个变量赋值。例如:
#!/bin/evn python #-*- coding:utf-8 -*- #Author:Anliu a = b = c = 1 print(a) print(b) print(c) print(a,b,c)
以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。
您也可以为多个对象指定多个变量。例如:
#!/bin/evn python #-*- coding:utf-8 -*- #Author:Anliu a,b,c,= 1,3.1415,"john" print(a,b,c)
以上实例,两个整型对象 1 和 2 分别分配给变量 a 和 b,字符串对象 "john" 分配给变量 c。
思考:一下程序输出结果是什么?
#!/bin/evn python #-*- coding:utf-8 -*- #Author:Anliu name1 = "anttech" name2 = name1 print(name1,name2) name2 = "thinking" print(name1,name2)
变量名只能是字母,数字或下划线的组合
变量名的第一个字符不能是数字
关键字不能声明为变量:
#!/bin/evn python #-*- coding:utf-8 -*- #Author:Anliu tingtingceshi = DMDB_OF_dir = cmdb_of_dir= CmdbOfDir =
注意:在python中是没有常量的概念。在C中const定义常量。
在Python中表示常量用大写的变量名表示(只是人为规定)
python解释器在加载.py文件中的代码时,会对内容进行编码(默认ascill)
在python2以及python3.6下执行一下代码:
[root@bogon test]# cat hw.py #/usr/bin/python2 print ("您好,世界!!!")
[root@bogon test]# python2 hw.py
File "hw.py", line 2 SyntaxError: Non-ASCII character ‘\xe6‘ in file hw.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
在python3.6上运行
在python3.7版本下运行改代码:
在pyhon2以及python3.6上再次执行如下代码:
[root@bogon test]# cat hw.py #/usr/bin/python3 #-*-coding:utf-8 -*- print("您好,世界!!!")
Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了
就是说,在python7上Cpython强制使用utf-8编码。
所以如果大家在学习过程中,代码中包含中文,就需要在头部指定编码。
**注意:**Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。
**注意:**如果你使用编辑器,同时需要设置 py 文件存储的格式为 UTF-8,否则会出现类似以下错误信息:
ASCII,美国标准信息交换代码是基于拉丁字母的一套电脑编码系统,主要用于显示现在英语和其他西欧语言,其最多只能用8位来表示(一个字节),即:2**8=256-1,所以呢,ASCII码最多只能表示255个字符。
有128-255个字符的扩展。
为了处理汉字,程序员设计了用于简体中文的GB2312和用于繁体的big5.
7445个汉字扩展存储——JB2312(1980年)
1995年汉字的扩展规模达到21886个符号,分别是汉字区和图形符号区,产生了GBK1.0。
2000年的GB18030取代了GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文,蒙文,维吾尔文等重要的少数民族文字。
从ASCII、GB2312、GBK到GB18030,这些编码是向下兼容的。
原文:https://www.cnblogs.com/anttech/p/12555694.html