基于python:3.7.8
变量是个盒子,里面可以装各种东西。装了苹果,当箱子和其它东西合作时,它就是苹果;装了鸭梨,和其它东西合作时,它就是鸭梨。
编译型语言(JAVA、Dart等)的变量要求箱子是固定的,装水果的就装水果,装面点的就装面点,装配件的就装配件。
解释型语言(python、javascript等)的变量不做要求,随便装,爱装啥装啥。当它和水果合作时就拿它当水果用;当它和面点合作时就拿它当面点用。
广义的变量是相对于常量而言的,指可变动的量。变量是绝对的,常量是相对的,没有绝对意义上的常量。
来自知乎:变量是什么意思?
- messsage = "hello,world!"
- number = 12;
- _Name = "张三";
- 张Mes = "我是汉字变量";
- print(messsage);
- print(number);
- print(_Name);
- print(张Mes);
- hello,world!
- 12
- 张三
- 我是汉字变量
变量名不建议使用,小写字母l,和数字0,因为1和l,0和o容易混淆;不建议使用汉字;
- Python 3.7.8 (tags/v3.7.8:4b47a5b6ba, Jun 28 2020, 08:53:46) [MSC v.1916 64 bit (AMD64)] on win32
- Type "help", "copyright", "credits" or "license" for more information.
- >>> import keyword
- >>> keyword.kwlist
- ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
- >>>
'False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'

python中没有使用语法强制定义常量,也就是说,python中定义常量本质上就是变量。如果非要定义常量,变量名必须全大写;
从规范上,大家默认将常量大写,不改变它的值;
- PI=3.1415;
- print(PI)