一,序言:这是我继java、VC++、C、C#……之后又入手的一门语言。
二,认识python
1,简介:python是一种面向对象、直译式计算机程序设计语言,具有丰富和强大的类库。它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。
2,历史:做为ABC 语言的一种继承,后缀名为.py
3,局限性:强制缩进:缩进表示同一个语法块
单行语句和命令行输出问题
4,开发环境:python 3.0 语法区别于 python 2.0
三,走进python
1)入门神级的程序hello world
新建test.py 用python编辑器打开
敲入 print ("hello world") 保存
按F5或 点击Run->Run Module
在输出框中显示 hello world
注意:python 3.0 编译环境 区别于 python 2.0编译环境语法
2)python工具之解释器
输入3+5 回车得到 结果 8
赋值x=5 输出x 得5
3)语法认识
例1:
for x in range(5,10):
print(x) #这里必须要缩进
输出:5,6,7,8,9,10
例2:range(1,5) 函数 代表从1到4
range(5) 函数 代表从0到4
for n in range(5,10):
for i in range(1,n):
if i%2 == 0:
print(i)
#break
else:
print("not aviable")
输出:2,4 2,4 2,4,6 ……
如果加上break 则 输出 2,2,2,2 //因为走到 2%2==0这一次for 循环就退出了
例3:函数的使用
def fib(n):
a,b=0,1
while b<n:
print(b)
a,b=b,a+b
fib(10)
输出斐波那契序列1,1,2,3,5,8
例4:默认参数
def test(name,num=7,age=18):
print("name:",name)
print("num:",num)
print("age:",age)
test("tianshuai")
print("*************")
test("tianshuai",1,22)
输出:
name: tianshuai
num: 7
age: 18
*************
name: tianshuai
num: 1
age: 22
例5:默认值只会解析一次。当默认值是一个可变对象,诸如链表、字典或大部分类实例时,会产生一些差异。例如,以下函数在后继的调用中会积累它的参数值:
def fun(a,L=[]):
L.append(a)
return L
print (fun(1))
print (fun(2))
print (fun(3))
输出:
[1]
[1, 2]
[1, 2, 3]
如果你不想在不同函数调用之间共享参数默认值,那么你可以如下编程
def f(a,L=[]):
if L is not None:
L=[]
L.append(a)
return L
print (f(1))
print (f(2))
print (f(3))
输出:
[1]
[2]
[3]
例6:参数关键字
def test(name,num=7,age=18):
print("name:",name)
print("num:",num)
print("age:",age)
test("tianshuai")
print("*************")
test("tianshuai",1,22)
print("++++++++++++++")
test(num=1,name="xiaowang") //不必按照参数原来顺序,指定参数关键字就可以调用
print("$#$#$#$#$#$#$#")
test(num=1,age=20,name="xiaoli")
输出:
name: tianshuai
num: 7
age: 18
*************
name: tianshuai
num: 1
age: 22
++++++++++++++
name: xiaowang
num: 1
age: 18
$#$#$#$#$#$#$#
name: xiaoli
num: 1
age: 20