本文适合有其它编程语言基础,想快速上手python语言的程序员。现对python语言与其它语言的不同点做一个总结。
python 中的self
首先明确的是self只有在类的方法中才会有,独立的函数或方法是不必带有self的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。
self在定义时需要定义,但是在调用时会自动传入。
self的名字并不是规定死的,但是最好还是按照约定是用self
self总是指调用时的类的实例。
注释
(1)单行注释以 # 开头注释
# 这是一个注释
print("Hello, World!")</pre>
(2)多行注释可以用多个 # 号,还有 ''' 和 """
这是多行注释,用三个单引号
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print("Hello, World!")
"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号
这是多行注释,用三个双引号
"""
(3)语句不需要用分号,函数不需要用大括号括起来,用缩进替代{}。
列表
列表(list)的内容要用 [ ] 括起来
例:
word_list=["wei","kun","haha","hi"]
print(word_list)
列表添加元素,要用 append 函数
word_list.append('kwin')
用 del 命令从类表中删除元素
del word_list[1] #删除第一个元素
列表的运算:类表可以做 + 和 * 运算,不能做 / 和 – 。
Tuple(元组)
类似于List(列表),用 小括号 来表示,但是不能二次赋值,可以简单的理解为不可变的列表(list)。
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
条件语句 if, else,for ..in , while后加冒号
age = 3
if age >= 18:
print('adult')
elif age >= 6:
print('teenager')
else:
print('kid')
Sets(集合是一个无序不重复元素的序列)
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
with 的使用可减少代码量
有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。在这个过程中,你还需要处理很多异常。
try:
f = open('xxx')
except:
print 'fail to open'
exit(-1)
try:
do something
except:
do something
finally:
f.close()
虽然这段代码运行良好,但是太冗长了。
这时候就是with一展身手的时候了。除了有更优雅的语法,with还可以很好的处理上下文环境产生的异常。
下面是with版本的代码:
with open("/tmp/foo.txt") as file:
data = file.read()
Python 定义函数使用 def 关键字
一般格式如下:
def 函数名(参数列表):
函数体
def hello() :
print("Hello World!")
访问限制
在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑。
如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线__,在Python中,实例的变量名如果以__开头,就变成了一个私有变量(private),只有内部可以访问,外部不能访问。
class Student(object):
def __init__(self, name, score):
self.__name = name
self.__score = score
def print_score(self):
print('%s: %s' % (self.__name, self.__score))
def get_name(self):
return self.__name
def get_score(self):
return self.__score
def set_score(self, score):
self.__score = score
需要注意的是,在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量,所以,不能用__name__、__score__这样的变量名。
Python内建函数
①abs、bool、dir、eval、exec、float、int、len、max、min、range、sum等函数;
②使用文件函数:open、write、close、read函数;
Python模块
python模块就是一些包含函数、变量和类的组合。
常用的python模块:copy(复制)、keyword(关键字)、random(随机数)、sys(控制shell程序)、time(时间)、pickle(保存信息)等。
使用模块,如游戏模块tkinter、pygame,作图模块turtlle等,有的非内置模块需要专门下载。
import turtle
行与缩进
python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。实例如下:
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 缩进不一致,会导致运行错误