@danren-aa120
2019-08-20T08:05:04.000000Z
字数 1810
阅读 354
Python
程序是用来处理数据的,而数据是存储在变量之中的。
1)变量定义(也称变量赋值)
qq_number = "7450813"(定义成字符串要加双引号,如果是具体数值不用加,=号前后空一格)
- 如果希望通过解释器的方式,输出变量的内容,需要使用print函数,print括号中直接输入变量名不用加双引号,如print(qq_number);ipython交互式不需要使用print;
- 变量名只是在第一次出现才是定义变量,再次出现时,不是定义变量,而是直接使用之前定义过的变量
- 变量中存储的值是可以改变的
2)变量的类型
数字型:布尔(真假Flase、True)、整数、浮点数(小数)、复数(实部加虚部,不常用)
非数字型:字符串、列表、元组、字典
数字类型、字符串和元组为不可变类型,内存中的数据不允许被修改;字典和列表为可变类型,使用操作方法改变内容后,变量地址不变,但重新对变量整体赋值后,会影响变量在内存中的地址。
- 在Python中,定义变量时是不需要指定变量的类型的,字符串类型必须加双引号,整型、浮点型、布尔型等不用加;在运行的时候,Python解释器会根据赋值语句等号右侧的数据,自动推导出保存的数据的准确类型;
- 如变量为布尔(bool)类型,定义变量时如gender = Flase;
- 在交互式界面中,可以用type函数,即:type(变量名),按回车后显示变量的类型。
3)不同变量类型之间的计算
- 数字型变量之间可以直接进行计算,数字型bool型的变量,True时以1进行计算,False时以0进行计算;
- 字符串变量之间可以用“+”拼接,也可以用 变量名 * 整数 重复某一字符串;
4)变量内容输入
- 使用input函数(函数实现了某一功能,可以直接使用,不用关心内部细节);如a = input("请输入:") 或a = input()
- input函数输入的内容都认为是字符串类型,如果想转换,需要类型转换函数,这样输入后转换完的变量可以进行乘法运算
5)类型转换函数
- int(x),如int("123"),int(123.5),
- float(x)
- 综合4)、5)点,可以a = int(input("请输入:")),b = float(input("请输入:"))
6)变量的格式化输出
语法:print("格式化字符串" % 变量名)
print("格式化字符串" % (变量名1,变量名2...))
格式化字符串有:
%s---字符串;
%xd---有符号十进制整数,x表示整数显示位数,不足的地方补0,如%09d;
%.xf---浮点数,x表示小数点后的显示位数,不足的地方补0,如%.02f;
%%---输出%号
7)变量的命名
变量和函数的名称称为标识符。
标识符命名由字母、数字和下划线组成,开头不能为数字,不能与关键字重名;大小写是区分的;尽量小写,单词之间用_连接;还有一种是驼峰命名法,如LastName。
可以用下面语句查看关键字:
import keyword
print(keyword.kwlist)
8)变量的引用
变量记录数据的地址,叫做引用。使用id(变量名或数据)可以查看变量中保存数据所在内存的地址。变量和数据都是保存在内存中的。函数中的实参是通过引用传递数据的。
8)局部变量和全局变量
在函数内部定义的变量叫局部变量,只能在函数内部使用。函数执行结束后,局部变量被系统回收。在不同的函数内部,可以定义相同名字的局部变量。
在函数外部定义的变量叫全局变量,所有函数内部都可以使用这个变量。全局变量名称一般采用g_??的方式,前面加g_或gl_。修改某一全局变量在项目中的名称,不用挨个修改,只需要点击某一个右击选择refactor,再选rename即可。编程时定义在全部函数的上方,保证下方函数都可以正常访问全局变量,因为Python是从上往下执行语句。在函数内部也可以使用global关键字定义全局变量。大多数程序语言不推荐使用全局变量,变化时维护工作量大。在函数内部用赋值语句如a = 3修改函数外部定义的全局变量a的值,只在该函数执行时起作用,且重复的变量名其实是该函数内部定义的局部变量,其它函数仍使用的是原先赋予的全局变量的值。如果真要在函数内部修改全局变量的值,则使用global关键字修改,如:
global a
a = 5
编程时遵循的代码结构按步骤依次为:shebang(声明用哪个解释器)--import模块---定义全部变量---函数定义--执行代码