[关闭]
@danren-aa120 2019-08-20T08:05:04.000000Z 字数 1810 阅读 354

4 变量--包含格式化字符串

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关键字修改,如:

  1. global a
  2. a = 5

编程时遵循的代码结构按步骤依次为:shebang(声明用哪个解释器)--import模块---定义全部变量---函数定义--执行代码

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注