python变量类型

1.输入和输出

input读取的是字符串,括号内的为提示信息,可有可无

_ 表示最后一个表达式的值

Python不需要像其他语言那样要 ; 号结束语句

格式化与C一致,%d  %f  %s  %x(十六进制整数)  %%(%)

 end默认“\n”换行  ” “为不换行

1 for i in range(10):
2     print(i,end=" ")  #输出:0 1 2 3 4 5 6 7 8 9

输出重定向

1 f = open('F:\mylog.txt','a')  #在F盘下新建一个文本文件,以追加的形式
2 print('1234567890',file=f)
3 f.close()  #打开必须关闭

 

2.变量

Python 中的变量赋值不需要类型声明(动态语言)。

每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。

每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

Python中赋值是将对象的引用(并不是值)赋值给变量

1 x = 3 #创建一个整型对象并将其引用赋给x,该对象引用为1
2 y = x #对象3的引用+1,x和y同时指向3
3 del obj  #删除对象的一个引用,记数为0则被回收

Python允许你同时为多个变量赋值。例如:

a = b = c = 99

1 x = 1
2 y = (x=x+1) #赋值语句不是合法表达式
3 y=x=x+1 #链式赋值没问题

 

不支持自增自减,但支持n*=10

 

 

3.变量作用域

Python的作用域一共有4种:

  L(Local)局部作用域

  E(Enclosing)闭包函数外的函数中

  G(Global)全局作用域

  B(Built-in)内建作用域

以L->E->G->B的规则查找(局部找不到,便去局部外的局部,再找不到就会去全局找,全局找不到去内建找)

1 x = int(2,9)    #内建作用域
2 g_count = 0    #全局作用域
3 def outer():
4     o_count = 1    #闭包函数外的函数中
5     def inner():
6         i_count = 2    #局部作用域

 

4.global和nonlocal关键字

当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字

1 num = 1
2 def fun1():
3     global num
4     print(num)    #1
5     num = 123
6     print(num)    #123
7 
8 print(fun1())
9 print(num)    #123

如要修改嵌套作用域中的变量则用nonlocal

 1 def outer():
 2     num = 10
 3     def inner():
 4         nonlocal num
 5         num = 100
 6         print(num)    #100
 7     inner()
 8     print(num)    #100
 9 
10 a = outer()
11 
12 if '__name__'=='__main__':
13     a()

 

5.多行书写

一行过长的语句可以用反斜杆(\)分解成几行

1 for i in \
2 range(10):
3     print(i,end="") #0123456789

三引号包括下的字符串也可跨行书写'''  '''

分号(;)允许将多个语句写在同一行上,语句之间用分号隔开

 

posted @ 2019-04-18 14:42  北风吹沙  阅读(490)  评论(0编辑  收藏  举报