python 01

1. python执行速度慢, C速度快, 为什么还是用python?

python : 20  
C:   200

python: 10min + 0.3s
C:  10min + 0.01s

2 python解释器

Cpython:
Ipython:是在Cpython的基础上增强了交互式功能;
Pypy: Jpython:
IronPython:.Net

3 python编辑工具:

python,ipython 
vim:
  第一行指定解释器位置: #!/usr/bin/env python    #!/usr/bin/python
  指定编码格式: #coding:utf-8     (ASCII, Unicode, GB2312, utf-8 )
  添加执行权限
IDE工具Pycharm:
  解压到/opt目录;
  cd {dir/home}/bin;./pycharm.sh;
  pycharm的设置信息保存在~/.PyCharmCE2017.1;
  charm &

4 安装Python,iPython

[root@server ~]# yum install python -y ##安装python
[root@server ~]# python                ##进入Python环境
Python 2.7.5 (default, Feb 11 2014, 07:46:25)   ##Python版本
[GCC 4.8.2 20140120 (Red Hat 4.8.2-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>                        ##在此输入命令,不可以用TAB补全命令。
>>> quit
Use quit() or Ctrl-D (i.e. EOF) to exit
>>> quit()                 ##退出python环境

安装ipython,需自行寻找ipython的rpm包以及它的相关包,安装其全部。
[root@server ipython]# ls
openpgm-5.2.122-2.el7.x86_64.rpm
python-ipython-3.2.1-1.el7.noarch.rpm
python-ipython-console-3.2.1-1.el7.noarch.rpm
python-ipython-gui-3.2.1-1.el7.noarch.rpm
python-jsonschema-2.3.0-1.el7.noarch.rpm
python-mistune-0.5.1-1.el7.x86_64.rpm
python-path-5.2-1.el7.noarch.rpm
python-pip-7.1.0-1.el7.noarch.rpm
python-pygments-1.4-9.el7.noarch.rpm
python-simplegeneric-0.8-7.el7.noarch.rpm
python-zmq-14.3.1-1.el7.x86_64.rpm
zeromq3-3.2.5-1.el7.x86_64.rpm

[root@server ipython]# yum install * -y   ##安装ipython
[root@server ~]# ipython      ##进入ipython环境
Python 2.7.5 (default, Feb 11 2014, 07:46:25)     ##版本
In [1]: quit                  ##退出

5 数值类型,运算符

 数值类型
  int, long, float, bool(True, False), complex
 运算符
  算术运算符: +, -, *, /, %, //  (python2.x和python3.x, /操作不同)5/2, 5.0/2, 5//2
  赋值运算符: =, +=, -=, /=, %=  (=和==,a+=3  a=a+3)
  关系运算符: >, <, >=, <=, ==, !=   (最终返回结果是bool类型) 
  逻辑运算符: and, or, not   (and,全真则真; or,有真则真, not)
In [16]: a = "pumpkin"           ##给变量赋值
In [17]: type(a)                 ##查看变量类型
Out[17]: str

In [18]: a                       ##显示变量值
Out[18]: 'pumpkin'

In [11]: abool = True            ##0为假,非0为真
In [12]: type(abool)
Out[12]: bool

In [14]: acomplex = 1+2j
In [15]: type(acomplex)
Out[15]: complex
内置方法:
help,cmp, type, str,int, float, longcomplex, bool, 
divmod, abs, pow, round

1.help(命令):查找命令的使用方法,q退出
2.cmp(num1,num2):比较num1和num2的大小
若num1>num2,返回1;若num1<num2,返回-1;若num1=num2,返回0
3.type(a):查看a的数据类型
4.str(a):将a转换为str输出,a可以为数字等    ##类型为str
5.int(num1):将num1取整输出,直接去尾       ##类型为int
6.float(num1):将num1转换为float输出       ##类型为float
7.long(num1):将num1转换为long输出         ##类型为long
8.complex(num):将num转换为复数输出        ##类型为complex
9.bool(num):将num转换为bool输出   ##类型为bool,0为False,非0为True
10.divmod(num1,num2):表示为 num1/num2,输出为(商,余数)
##需遵守除数不能为0,即不能为False
## 0/任何数,结果为(0,0)
11.abs(num1):对num1取绝对值并输出
12.pow(num1,num2):num1的num2次方
13.round(num1):对num1进行 四舍五入 保留

6 python程序初探

*****非常重要:
ASCII: 1字节=8bit(8个0101)   2^8-1= 255
Unicode:2字节=16bit,2^16-1=65535      a-字节  你-2字节 
utf-8:英文一个字节存储, 其他三个字节存储;
GB2312python文件的执行
方法一: python 相对路径
方法二:给文件加可执行权限,使用绝对路径执行文件

例一:

#!/usr/bin/python        ##编程环境,可用which python命令查询
#coding:utf-8            ##uft-8编码,可以编译中文

westos = "welcome to to westos"
print westos

# print "我是中国人"

这里写图片描述

例二:判断闰年?
这个年份能被4整除但不能被100整除, 或者能被400整除,那么就是闰年.

#!/usr/bin/env python
#coding:utf-8
year = 2000
print (year%4==0 and year%100!=0) or  year%400==0

这里写图片描述

7 I/O操作

输入:input
1. input接收数值类型数据:
2. raw_input接收字符串类型的数据:

输出:print
可以在一对"""之间写输出,将会按照格式输出。

例一:input接收数值类型数据

#!/usr/bin/env python
#coding:utf-8

year = input("输入判断年份:")
print type(year)
print (year%4==0 and year%100!=0) or  year%400==0

例二:raw_input接收字符串类型的数据:

#!/usr/bin/env python
#coding:utf-8

username = raw_input("用户名:")
password = raw_input("密码:")
print "username:%s    password:%s" %(username, password)

print "用户名是:", username
print "密码是:", password

例三:输出print

#!/usr/bin/env python
#coding:utf-8

print "hello world"
print """

*********************************************************
*********************用户管理系统**************************
*********************************************************

    1. 新建用户
    2. 删除用户
    3. 登录

"""
#!/usr/bin/env python
#coding:utf-8

print """
**********************************************************
**********************************************************

    1. %s

    2. %s

""" %("java", "python")
#!/usr/bin/env python
#coding:utf-8

score1 = input("科目1:")
score2 = input("科目2:")
score3 = input("科目3:")

print ("平均成绩为:%d") %((score1+score2+score3)/3)

8 判断语句

if语句的格式:
第一种:
if 表达式:
    满足表达式执行的语句.....
第二种:
if 表达式:
    满足表达式执行的语句.....
else:
    不满足表达式执行的语句.....
第三种:
if 表达式:
    满足表达式执行的语句1.....
elif 表达式:
    满足表达式执行的语句2.....
elif 表达式:
    满足表达式执行的语句3.....
else:
    不满足表达式执行的语句.....

三目运算符: 
        python不支持: a>b?a:b
        python支持: a if a>b else b

例一:if和if…else

#!/usr/bin/env python
#coding:utf-8

warn = ""
disk_uasge = 78

if warn or disk_uage > 80:
    print "服务器急需维护...."
else:
    print "一切顺利!"

例二:if包含多重条件表达式

#!/usr/bin/env python
#coding:utf-8

age = input("Age:")
if age > 18:
    print "成年"  
elif 10<age<18: 
    print "boy or girl"
else:
    print "baby"

例三:三目运算符的实现

#!/usr/bin/env python
#coding:utf-8

num1 = input()
num2 = input()

max = num1 if num1>num2 else num2
print max

综合例子:

#!/usr/bin/env python
#coding:utf-8

print "****************服务器信息录入*******************"
hostname = raw_input("把主机名告诉我:")
IP = raw_input("你ip是啥:")
used_year = input("已使多少年:")
if used_year > 10:
        print ("该服务器使用年限太久!")
else:
        CPU = raw_input("cpu类型:")
        Memory = input ("内存多大:")
        print """
                服务器信息显示
hostname:%s
IP:%s
used_year:%s
CPU:%s
Memory:%s
""" %(hostname,IP,used_year,CPU,Memory)

9 while循环

while循环的语法:

while 表达式:
    满足表达式执行的语句

while 表达式:
    满足表达式执行的语句
else:
    不满足表达式执行的语句

# 死循环/无限循环
while True:
    print "hello"

for, break, continue, pass
break: 跳出循环,不再进行循环语句
continue: 跳出本次循环, 继续回到循环语句,执行下一次循环;
#!/usr/bin/env python
#coding:utf-8

count = 1
while count < 10:
    print count
    count += 1
    exit()

例一:

考察点:
    a). 死循环while语句;
    b). 循环语句和if语句的嵌套;
    c). breakcontinue的差异;

1. cmd  = 显示命令行提示符,等待用户输入;
2. 如果命令为空, 跳出本次循环,继续接收用户命令;
3. 如果命令为quit,跳出所有循环,结束程序;
4. 如果有命令,那么打印"run %s" %(cmd)  
#!/usr/bin/env python
#coding:utf-8

while True:
    cmd = raw_input(">>>:").strip()
    if not cmd:
        continue
    elif cmd == "quit":
        break
    else:
        print "run %s" %(cmd)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值