Python复习笔记—基本语法
3年前用过Python,现在忘的差不多了,现在项目又用到它了,重新拾起来,记录笔记以方便以后的重拾。1. Python脚本
脚本提示符:
#! /usr/bin/env python
2. 语言基础
2.1 Numbers
i. Python的整数相除是向上取整
>>> 7/3
2
>>> 7/-3
-3
ii. 复数用(real+imagj),或complex(real, imag)创建
2.2 Strings
i. 单引号(')和双引号(")均可表示字符串
ii. 多行可以用三个引号(""")标识开始和结束
iii. 常量字符串前加r表示raw字符串,内容将不会转义
>>> rawstring = r'raw string \n \t \r keeps'
>>> print rawstring
raw string \n \t \r keeps
iv. 字符串可以用加号(+)连接(常量字符串之间可以省略),且可以重复(*)
>>> repeat = 'I' ' Love' * 3 + ' Python'
>>> print repeat
I LoveI LoveI Love Python
v. 字符串切割(slice)
字符串可以被任意切割,如果范围不正确或超过范围返回空字符串,但下标访问超过范围会抛异常
>>> helloworld = 'hello world'
>>>
>>> helloworld
' world'
>>> helloworld
'w'
>>>
>>> helloworld
'world'
>>> helloworld
'lo'
>>> helloworld[-1]
'd'
>>> helloworld[-2:3]
''
>>> helloworld[:-6]
'hello'
>>> helloworld[-0]
'h'
>>> helloworld
''
>>> helloworld
'ello world'
>>> helloworld
''
>>> helloworld
Traceback (most recent call last):
File "<pyshell#77>", line 1, in <module>
helloworld
IndexError: string index out of range
2.3 Lists
i. Python的List的元素可以不为不同类型
>>> lista = ['egg', 'hurt', 2, 3.14]
>>> lista
['egg', 'hurt', 2, 3.14]
ii. List可以像字符串一样随意切割,重复,下标访问
>>> lista + ['very'] * 2
['egg', 'hurt', 'very', 'very']
>>> lista
3.14
iii. List的替换、插入、赋值、清空
>>> lista
['egg', 'hurt', 2, 3.14]
>>>
>>> lista=['foo', 1.72] # replacement
>>> lista
['foo', 1.72, 2, 3.14]
>>> lista = [] #add list as an element
>>> lista
[[], 1.72, 2, 3.14]
>>> lista = [] #clear elements between 0 and 1
>>> lista
>>> lista = ['sec', 'third'] #insert two elements at index 1
>>> lista
>>> lista[:0] = lista #make a copy of itself
>>> lista
>>> lista[:] = [] #clear
>>> lista
[]
>>> len(lista)
0
2.4 控制流
i. if...elif..else
>>> def whatx(x) :
if x > 0 :
print 'positive'
elif x == 0 :
print 'zero'
else :
print 'negative'
>>> whatx(-3)
negative
ii. for...in
>>> for i in :
print i,
1 2 3 4 5
和其他语言一样在循环的时候添加删除元素是不安全的,Python可以隐式的拷贝一个List
>>> odds =
>>> for i in odds[:] : #make a slice copy of entire list
if (0 == i % 2) :
odds.remove(i)
>>> odds
iii. Range,可指定起始,步长
>>> range(5)
>>> range(2, 10)
>>> range(3, 15, 3)
>>> range(-5, -30, -5)
[-5, -10, -15, -20, -25]
iv. Pass占位符
Pass什么都不做,只是让语法通过,
>>> class Non :
pass # minimal class for indicate a status
>>> def foo() :
pass # remember implement this
>>>
v. 赋值
Python可以一次给多个变量赋值
>>> x, y, z = 1, 5, 7
>>> x
1
>>> y
5
>>> z
7
vi. == 和is
==相当于equals,而is确定是否是同一对象。
页:
[1]