cmd命令进入python,直接输入python
python文件结尾为要添换行符,未加会报错
>>> _
下划线_,表示最后一个表达式的值
字符串替换: print + %(字符串格式操作符)
%s 由字符串替换 | %d 由整型替换 | %f 由浮点型替换 |
>>> print "%s is number %d!" % ("Python",1)
Python is number 1!
数据输入 raw_input()内建函数
除法操作符 /传统除法 //浮点除法(对结果进行四舍五入)
变量名大小写敏感
python不支持C语言中的自增1和自减1操作符
int long bool float complex
+ 字符串连接运算 | * 字符串重复 |
元组( )和列表[ ]
元组可以看成是不可修改的列表
print语句默认给每一行添加一个换行符,在print语句最后加逗号,可以不加换行符
range() 函数常和len() 函数一起用于字符串索引
打开文件
handle = open(file_name,access_mode = 'r')
'r' 读取 'w'写入 'a'添加
如open成功,则会返回文件句柄,所有后续操作都必须通过此文件句柄进行
函数和方法
方法是特殊的函数,和对象相关
属性是与数据相关的项目 句点属性标识
#打开文件,并输入其内容至屏幕上
#快速完整地访问文件,适用于文件大小适中的文件
filename = raw_input('Enter file name: ')
fobj = open(filename,'r')
for eachLine in fobj:
print eachLine,
fobj.close()
#try-except 为代码添加错误检测及异常处理
try:
filename = raw_input('Enter file name: ')
fobj = open(filename,'r')
for eachLine in fobj:
print eachLine,
fobj.close()
except IOError,e:
print 'file open error:',e
py中的函数用()调用,调用前须先定义,如函数中无return语句则自动返回None对象
引用调用,函数内对参数的改变会影响到原始对象(实际仅可变对象会受影响)
#定义函数
def function_name(arguments):
"optional documentation string"
function_suite
# 自身值加到自身
def addMe2ME(X):
'apply + operation to argument'
return (x + x)
# 对于浮点数 '0.333' 保留小数点(.)后三位
>>> print('{0:.3f}'.format(1.0/3))
0.333
# 使用下划线填充文本, 并保持文字处于中间位置
# 使用 (^) 定义 '___hello___'字符串长度为 11
>>> print('{0:_^11}'.format('hello'))
___hello___
# 基于关键词输出 'Swaroop wrote A Byte of Python'
>>> print('{name} wrote {book}'.format(name='Swaroop', book='A Byte of Python'))
Swaroop wrote A Byte of Python
转义序列 反斜杠\ \n换行 \t制表符
末尾的反斜杠表示字符串将在下一行继续,但不会添加新的一行
#错误 提示secret_word是局域变量,和全局变量重复命令了
#解决办法 将局域定义变量名称和外部变量名称不一致就行
Shadows name 'secret_word' from outer scope
波浪线报错:格式不标准,设置里面关闭或者调整为标准格式
找不到对应模块
# 定义类
class ClassName(base_class[es]):
"option documentation string"
static_member_declarations
method_declarations
#实例 实际无法运行,print不起作用
class Fooclass(object):
"""my very first class:FooClass"""
version = 0.1 #class (data) attribute
def __init__(self,nm = 'John Doe'):
"""constructor"""
self.name = nm #class instance (data) attribute
print 'Created a class instance for', nm
def showname(self):
"""display instance attribute and class name"""
print 'Your name is', self.name
print 'My name is', self.__class__.__name__
def showver(self):
"""display instance attribute and class name"""
print self.version #references FooClass.version
def addme2me(selef, x): #does not use 'self'
"""apply + operation to argument"""
return x+x
#__init__() 所有名字开始和结束都有两个下划线的方法都是特殊方法
#类实例被创建时,__init__()方法会自动执行,在类实例创建完毕后执行,类似构造器,执行一些该对象的必要的初始化工作
#每个方法都有的一个参数,self---类实例自身的引用