Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2270458
  • 博文数量: 168
  • 博客积分: 6641
  • 博客等级: 准将
  • 技术积分: 1996
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-02 11:49
文章存档

2020年(4)

2019年(6)

2017年(1)

2016年(3)

2015年(3)

2014年(8)

2013年(2)

2012年(12)

2011年(19)

2010年(10)

2009年(3)

2008年(17)

2007年(80)

分类: LINUX

2013-06-30 11:31:43


Python脚本语言小记 
 
2013-06-30  TsengYia#126.com http://tsengyia.blog.chinaunix.net/

############################################################################## 

系统环境: 
    RHEL 6.2 [2.6.32-220.el6.i686] 
 
软件环境: 
    python-docs-2.3.4.el6.i686
 
############################################################################## 
 
一、Python语句的执行

1. 进入交互式界面
[root@localhost ~]# python
Python 2.4.3
.. ..
>>> print 'Hello World'
Hello World
>>>     //按Ctrl + D退出
[root@localhost ~]# 

2. 执行脚本程序
[root@localhost ~]# vim helloworld.py
#!/usr/bin/python
#-*- coding:utf-8 -*-     //此行指定多字节字符编码(如utf-8),若无可省略
print 'Hello World'

[root@localhost ~]# chmod +x helloworld.py
[root@localhost ~]# ./helloworld.py
Hello World

3. 获取Python帮助
[root@localhost ~]# yum -y install python-docs
[root@localhost ~]# export PYTHONDOCS=/usr/share/doc/python-docs-2.3.4/html
[root@localhost ~]# python
>>> help('print')
.. ..

!!!! 在多数Linux发行版中,可以使用随附的pydoc工具查看帮助
!!!! 执行pydoc -w 81 在81端口启用HTTP服务,然后可通过浏览器访问模块手册

4. 逻辑行与物理行
1)物理行指编辑界面的视觉上的一行,一般以回车符分隔,逻辑行通常指一条python执行语句
2)多个逻辑行可以使用分号组合为一个物理行
3)单个逻辑行可以在行尾使用\强制显示为多个物理行
4)空格或Tab位不能用在独立的逻辑语句开头,可用在语句块(if块、while块)前作缩进


二、字符串的使用

1. 单引号' 和双引号"
成对出现,用来界定一个字符串
单引号与双引号的作用相同

>>> print 'Hello World'
>>> print "Hello World"
>>> print "What's your name?"

2. 三引号'''
成对出现,用来界定多行字符串,首尾分布在不同的物理行

>>> print '''First line,
... Second line ...
Third line.'''
First line,
... Second line ...
Third line.

3. 使用 \ 转义字符

4. 指定使用自然字符串(禁用转义、启用正则)
>>> print 'A string\\'
A string\
>>> print r'A string\\'
A string\\

5. 变量的赋值和引用
>>> str = 'abcdef'
>>> print str
abcdef

6. 重复输出字符串
>>> str="Beijing " ; times=3
>>> print str * times
Beijing Beijing Beijing 


三、运算符的使用

1. 数值运算
加 + 、减 - 、乘 * 、除 / 
乘幂(指数) **
取模(取余数) %
取整(非四舍五入) //
左位移 << 、右位移 <<
按位与 & 、按位或 |

2. 数值比较
大于 > 、小于 < 、等于 ==
大于或等于 >= 、小于或等于 <= 、不等于 !=

3. 逻辑判断
逻辑非 not 、逻辑与 and 、逻辑或 or

>>> a='true'
>>> not a
False
>>> a and 4>1
True
>>> a or 4>5
'True'


四、程序控制流

1. if语句    —— elif和else部分均可选,语句块必须有缩进

-------- 格式 --------
if 条件1:
    if语句块
elif 条件2:
    elif语句块
elif 条件3:
    elif语句块
else:
    else语句块

-------- 示例 --------
#!/usr/bin/python
#-*- coding:utf-8 -*-
number = 5
guess = int(raw_input('请输入一个整数:'))
if guess == number:
    print '恭喜你,猜对了!'
elif guess < number:
    print '抱歉,比那个大一点'
else:
    print '抱歉,比那个小一点'
print '执行完毕'

2. while语句    —— 也有else部分(冗余的,基本不用),语句块必须有缩进

-------- 格式 --------
while 条件:
    while语句块

-------- 示例 --------
#!/usr/bin/python
#-*- coding:utf-8 -*-
i = 1
while i <= 3:
    print i
    i+=1


3. for语句    —— 也有else部分(冗余的,基本不用),语句块必须有缩进

-------- 格式 --------
for 变量 in [值1,值2,值3, ...]:
    for语句块

-------- 示例 --------
#!/usr/bin/python
for i in ["a","b",12]:     //两侧的方括号[]可以省略
    print i
for i in range(1,4):     //range(1,6)的效果(从0起)相当于命令 seq 1 5
    print i     //range(1,2,6)的效果相当于命令 seq 1 2 5

4. break中断当前语句块,continue继续下一次循环


五、函数的运用

1. 定义新函数
def adder(a,b)
    print a+b     //此处a、b为函数内局部变量;若要用全局变量a,需提前声明global a
adder(12,34)

2. 为自定义的函数给出文档说明(docstrings特性)

-------- 示例 --------
#!/usr/bin/python
#-*- coding:utf-8 -*-
def printMax(x,y):
    '''欢迎使用printMax函数

本函数用来输出两个整数之间的最大值。'''
    if int(x) > int(y):
        print '最大值是',int(x)
    else:
        print '最大值是',int(y)
printMax(3,5)
print printMax.__doc__     //通过__doc__属性来获取docstrings内容
    //help(printMax)也可以显示说明

3. 常见的内部函数
1)raw_input([prompt])
提示用户输入一个字符串

>>> raw_input("Input a string: ")
Input a string: Beijing
'Beijing'

2)int(x)
将一个浮点数或字符串类型的数转换为整数(直接取整,非四舍五入)

>>> a=1234.56
>>> int(a)
1234
>>> a="1234"
>>> int(a)
1234

3)range([start,],stop[,step])
生成整数序列

>>> range(3)
[0,1,2]
>>> range(1,3)
[1,2]
>>> range(0,3,2)
[0,2]

4)len(object)
返回字符串的长度

>>> a="Beijing"
>>> len(a)
7


…… (待续) ……

##############################################################################
阅读(942) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~