1 python种类
Cpython 使用C语方实现,使用最为广泛,CPython实现会将源py文件转换成字节码pyc文件,解码器后运行在Python虚拟机上面
Jpython 在java实现 Jypthon会将Python代码动态编译成Java字节码然后在JVM上运行
IronPython C#实现
PyPY Python实再的Python
RubyPython Ruby实现的Python
Brython javaScript实现的Python
2 centos安装python2.7和python3.5
[root@mysql ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)
tar zxvf Python-2.7.14.tgz
cd Python-2.7.14
./configure
make
make install
tar zxvf Python-3.5.4.tgz
make
cd Python-3.5.4
./configure
make
make install
直接运行python2.7 和python3.5
3 编写python第一个程序
#!/usr/bin/env python2.7
#-*- coding:utf-8 -*-
print "hello world"
如果是python2.7就需要添加开头两行
一个是运行环境,第二个是编码utf-8不然就会出现乱码
=======================
#!/usr/bin/env python3
print ("hello world")
#python3之后默认就是utf-8编码,所以不就不需要指定为utf-8编码
================
4 注释
# 当行注释
多行注释 """ 被注释内容 """
5 执行脚 本传入参数
Python内部提供的模块
业内开源的模块
程序员自已开发的模块
测试发现放在同一个目录如
/tmp/test.py
print ("test")
/tmp/main.py
#!/usr/bin/env python3.5
import test
print ("main")
6 pyc文件
执行Python代码时,如果忖入了其他的.py文件,那么,执行过程中会自动生成一个与其同名的.pyc文件,该文件就是Python解释器编译之后产生的字节码
7 变量定义规则
变量名只能是字母,数字或下划线的任意组合
变量名的第一个字符不能是数字
以下关键字不能声明为变量名
['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']
8 输入
#!/usr/bin/env python3 username = input("please input name:") pwd = input("please input password:") if username == "alex" and pwd == "123" : print ("yes") else: print ("no")
如果输入密码让不可见,周日需要利用getpass模中的getpass方法
1 #!/usr/bin/env python2.7 2 #-*- coding:utf-8 -*- 3 import getpass 4 pwd = getpass.getpass("请输入密码:") 5 print pwd
9 流程控制和缩进
if 条件满足:
执行语句
else :
执行语句
1 #!/usr/bin/env python2.7 2 #-*- coding:utf-8 -*- 3 import getpass 4 name= raw_input("请输入用户名:") 5 pwd = getpass.getpass("请输入密码:") 6 if name == "Robert" and pwd == "123": 7 print "Robert 登陆成功" 8 else: 9 print "用户名或密码错误"
if else语句需要注意的是if 条件后面有一个: 同样else后面也有一个:下面语句有多行需要缩进对齐
最好是用空格键 ,不要用Tab键
if 判断条件:
语句一
语句二
elif 判断条件:
语句一
语句二
else:
语句一
10 while循环
1 while 条件: 2 #循环体 3 #如果条件为真,那么循环体则执行 4 #如果条件为假,那么循环体不执行
break 和continue的区别
break退出循环体,continue是结束该次循环,继续下一次循环
用while循环输入1 2 3 4 5 6 8 9 10
1 #!/usr/bin/env python3.5 2 import time 3 i = 0 4 while True : 5 i=i+1 6 time.sleep(1) 7 if i == 7: 8 continue 9 else: 10 print(i) 11 if i == 10: 12 break
求1-100的所有数的和
1 #!/usr/bin/env python3 2 sum = 0 3 i = 1 4 while True: 5 if i <=100 : 6 sum = sum + i 7 if i == 100: 8 break 9 i += 1 10 print (sum)
输出1-100内的所有奇数
#!/usr/bin/env python3 i = 1 sum = 0 while i <=100: if i % 2 == 1: print(i) sum = sum + i i +=1
求1-2+3-4+5...99的所有数的和
1 #!/usr/bin/env python3 2 i = 1 3 sum = 0 4 string='' 5 while i < 100: 6 if i == 1: 7 string=str(i) 8 sum = sum + i 9 i = i+1 10 continue 11 if i % 2 == 0: 12 string=string+"-"+str(i) 13 sum = sum - i 14 else: 15 sum=sum+i 16 string=string+"+"+str(i) 17 i +=1 18 print (string+"="+str(sum))
用户登陆(三次机会重试)
1 #!/usr/bin/env python3 2 i = 1 3 flag = 0 4 while i <=3: 5 name=input("please input name:") 6 pwd = input("password:") 7 if name == "Robert" and pwd == "123": 8 flag = 1 9 break 10 elif i ==3: 11 break 12 else: 13 print ("你还有"+str(3-i)+"次机会") 14 i = i+1 15 16 if flag == 1 : 17 print ("恭喜你登录成功") 18 else: 19 print ("登录失败,请与管理员联系")
root@mysql scripts]# python3 deng.py
please input name:dong
password:123
你还有2次机会
please input name:piter
password:234
你还有1次机会
please input name:Robert
password:123
恭喜你登录成功