Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。
Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议[2] 。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中[3] 有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。下面我们来看python的一些基本语法:
python目前一共有python2.x python3.x版本,2.x版本到2.7了,并且不会在开发,不过目前都用的是2.7的版本,以后的实验也会用2.7的版本。
1)vim:
第一行指定解释器位置: #!/usr/bin/env python #!/usr/bin/python
建议使用第一种方式,因为这样来书写有利于代码的跨平台性。
指定编码格式: #coding:utf-8 (ASCII:每个字符使用一个字节
Unicode,每个字符两个字节
GB2312,
utf-8:英文字母一个,汉字两个
2) 执行: python xxx.py
chmod +x xxx.py -------> 相对路径xxx.py
3) 数值类型
int,整形
long,长整型
float,浮点型
bool(True, False),判断型
complex比较型。
......
4)运算符
算术运算符: +, -, *, /, %, // (python2.x和python3.x, /操作不同)5/2, 5.0/2, 5//2
可在2.7版本的ipython交互模式下执行“from __future__ import division”
赋值运算符: =, +=, -=, /=, %= (=和==,a+=3 a=a+3)
关系运算符: >, <, >=, <=, ==, != (最终返回结果是bool类型)
逻辑运算符: and, or, not (and,全真则真; or,有真则真, not)
5)内置方法
如何找帮助? help(cmp)
type(1),查看类型:
cmp(1,2), 比较大小,返回bool
str(1), 转化为字符串
abs(-10),绝对值,
divmod(10,3), 得到商和余数
round(1.9)四舍五入
........
类型转换函数: int(1.0), long(1), float(1), bool(1), bool(0), complex(1)
6)IO操作
Input:
raw_input: 传入值为字符串类型;
input: 传入值为数值类型;
Output:
print "hello world"
print hello ------------------错误,因为hello会被当作是一个变量里对待,使得当前环境找不到这个变量。
print """
xxxxx
1.
2.
"""
**三引号有三种功能:
字符串常用方法:
1. 判断字符串由什么组成? s.isdigit() ...........
2. 判断是否以什么开头,什么结尾?
s.startswith("http://")
s.endswith(".png")
3. 去除字符串的左右的空格:(主要应用在有用户输入数据的地方)
s.strip(),s.lstrip(),s.rstrip(),s.replace(" ", "")
重点: s.replace方法也可以间接实现删除某个字符;
4. 字符串对齐格式化:左对齐, 右对齐, 中间对齐
s.center(40, "*")
s.ljust(40,"*")
s.rjust(40,"*")
5. 按照指定分隔符分离字符串:(默认分隔符为空格)
ip = "172.25.254.250"
ip.split(".") # ['172', '25', '254', '250']
6. 指定分隔符连接信息
a = info.split()
"+".join(a) # 'westos+10+company'
7)占位符: %s, %d, %f, %.5d, %.2f, %e
name = "westos"
age = 19
money = 1000.2345
print "Name:%s Age:%d Money:%.2f" %(name,,age,,money) 占位符号就是用在“”中和后面的变量对应的。
8)判断语句
1.if xxxx:
xxxxxx
2.if ...else ....
3.if ... elif ... elif... else.....
4.state1 if 表达式 else state2 (三目运算符的实现)
#8. 循环语句
while 表达式:
state1
while 表达式:
state1
else:
state2
9. 循环语句种用户关键字
break: 跳出循环,不再进行循环语句
continue: 跳出本次循环, 继续回到循环语句,执行下一次循环;
10.序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
#!/usr/bin/pythonlist1 = ['physics', 'chemistry', 1997, 2000] list2 = [1, 2, 3, 4, 5, 6, 7 ]print "list1[0]: ", list1[0] -----------1print "list2[1:5]: ", list2[1:5] -----------2,3,4,5 (i,第i-1)
列表截取 print list01[0] 第一个元素 print list01[-1] 最后一个元素,list01[-2]为倒数第二个元素 print list01[0:3] 第一个到第三个元素。 列表重复print list01 * 2
列表组合print list01 + list02 获取列表长度print len(list01) 元素是否存在于列表中 print 'john' in list02 True or False.
11)Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
元组中只包含一个元素时,需要在元素后面添加逗号
tup1 = (50,);
元组可以使用下标索引来访问元组中的值,如下实例:
#!/usr/bin/pythontup1 = ('physics', 'chemistry', 1997, 2000)tup2 = (1, 2, 3, 4, 5, 6, 7 )print "tup1[0]: ", tup1[0]print "tup2[1:5]: ", tup2[1:5]
输出结果:
tup1[0]: physicstup2[1:5]: (2, 3, 4, 5)