1.输入和输出
input读取的是字符串,括号内的为提示信息,可有可无
_ 表示最后一个表达式的值
Python不需要像其他语言那样要 ; 号结束语句
格式化与C一致,%d %f %s %x(十六进制整数) %%(%)
end默认“ ”换行 ” “为不换行
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
三引号包括下的字符串也可跨行书写''' '''
分号(;)允许将多个语句写在同一行上,语句之间用分号隔开