Python入门
一、第一句Python代码
1 print ("Hello,Python")
二、解释器
.py脚本的文件由python解释器来执行。
如果想要类似于执行shell脚本一样执行python脚本,例: ./hello.py ,那么就需要在 hello.py 文件的头部指定解释器,如下:
1 #!/usr/bin/env python
三、内容编码
python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),如果是如下代码的话:
报错:ascii码无法表示中文
1 #!/usr/bin/env python
2 print "你好,世界"
改正:应该显示的告诉python解释器,用什么编码来执行源代码,即:
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
四、注释
单行注视:# 被注释内容
多行注释:""" 被注释内容 """,'''被注释内容'''
五、执行脚本传入参数
Python有大量的模块,从而使得开发Python程序非常简洁。类库有包括三中:
- Python内部的模块
- 业内开源的模块
- 程序员自己开发模块
Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行python脚本时传入的参数:
#!/usr/bin/env python # -*- coding: utf-8 -*- import sys print sys.argv
六、 pyc 文件
执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。
ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码
七、变量
1、声明变量
#!/usr/bin/env python # -*- coding: utf-8 -*- name = "wupeiqi"
上述代码声明了一个变量,变量名为: name,变量name的值为:"wupeiqi"
变量的作用:昵称,其代指内存里某个地址中保存的内容

变量定义的规则:
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
2、变量的赋值
#!/usr/bin/env python # -*- coding: utf-8 -*- name1 = "wupeiqi" name2 = "alex"

#!/usr/bin/env python # -*- coding: utf-8 -*- name1 = "wupeiqi" name2 = name1

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 将用户输入的内容赋值给 name 变量
name = raw_input("请输入用户名:")
# 打印输入的内容
print name
输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import getpass
# 将用户输入的内容赋值给 name 变量
pwd = getpass.getpass("请输入密码:")
# 打印输入的内容
print pwd
九、流程控制和缩进
需求一、用户登陆验证
#!/usr/bin/env python # -*- coding: encoding -*-
'''用户登录验证'''
# 提示输入用户名和密码
import getpass
usr = input("请输入用户名:")
passcode = getpass.getpass("请输入密码:")
# 验证用户名和密码 # 如果错误,则输出用户名或密码错误 # 如果成功,则输出 欢迎,XXX!
if usr == "Pytree" and passcode == "123":
print ("欢迎"+usr+"回来!")
else:
print ("用户名和密码错误!")
需求二、根据用户输入内容输出其权限
# 根据用户输入内容打印其权限 # alex --> 超级管理员 # eric --> 普通管理员 # tony,rain --> 业务主管 # 其他 --> 普通用户
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 根据用户输入内容输出其权限
name = input('请输入用户名:')
if name == "Pytree":
print ("超级管理员")
elif name == "tattoo":
print ("普通管理员")
elif name == "levis" or name == "huifenglin":
print ("业务主管")
else:
print ("普通用户")
十、while循环
1、基本循环
while 条件:
# 循环体
# 如果条件为真,那么循环体则执行
# 如果条件为假,那么循环体不执行
2、break
break用于退出所有循环
while True:
print "123"
break
print "456"
3、continue
continue用于退出当前循环,继续下一次循环
while True:
print ("123")
continue
print ("456")
# 这是一个死循环……
练习题
1、使用while循环输入 1 2 3 4 5 6 8 9 10
1 # 使用while循环输入 1 2 3 4 5 6 8 9 10 2 3 i = 1 4 while i <= 10: 5 if i == 7: 6 print (" ") 7 else: 8 print (i) 9 i += 1
2、求1-100的所有数的和
1 '''求1-100的所有数的和''' 2 3 i = 1 4 j = 0 5 while i <= 100: 6 j = j + i 7 i += 1 8 9 print("1~100的所有数的和是:%d"%j)
3、输出 1-100 内的所有奇数
1 '''输出 1-100 内的所有奇数''' 2 3 i = 1 4 while i <= 100: 5 if i % 2 == 1: 6 print (i) 7 i += 1
4、输出 1-100 内的所有偶数
1 '''输出 1-100 内的所有偶数''' 2 3 i = 1 4 while i <= 100: 5 if i % 2 == 0: 6 print (i) 7 i += 1
5、求1-2+3-4+5 ... 99的所有数的和
1 '''求1-2+3-4+5 ... 99的所有数的值''' 2 3 i = 1 4 j = 0 5 while i < 100 : 6 if i % 2 == 1 : 7 j = j + i 8 else: 9 j = j - i 10 i += 1 11 print ("求1-2+3-4+5 ... 99的所有数的值是%d"%j)
6、用户登陆(三次机会重试)
1 '''用户登陆(三次机会重试)''' 2 3 import getpass 4 username = "Pytree" 5 pwd = "123" 6 countnum = 3 7 while countnum > 0: 8 countnum -= 1 9 usr = input("请输入用户名:") 10 passwd = getpass.getpass("请输入密码:") 11 if usr != username or passwd != pwd : 12 print("用户名和密码错误,请重新输入!你还剩%d次机会可以输入!"%countnum) 13 else: 14 print("登录成功!") 15 break

浙公网安备 33010602011771号