Python
《简明Python教程》 《Head First Python》 --入门教程
http://www.compileonline.com/execute_python_online.php --在线编辑器
可以把部分程序用C或C++编写,然后在Python程序中使用它们
也可以把Python嵌入C/C++程序,从而向你的程序用户提供脚本功能
Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。
Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。
Python编译器本身也可以被集成到其它需要脚本语言的程序内。
因此,很多人还把Python作为一种“胶水语言”(glue language)使用。
使用Python将其他语言编写的程序进行集成和封装。
- IDE:集成开发环境
基本语法
-
python中用缩进代替{}表是一个模块,强制缩进
-
print 可以输出文字、数字、表达式、比较结果,汉字要加单引号或双引号,区分大小写;python3之后的版本要加英文下的 ()
-
在python命令行下,print是可以省略的
-
两个print默认换行,在中间加个‘,’即可输出在同一行
-
输入:input() ,如果输入文字则要加引号(单双引都行)
-
raw_input():把所有输入当做一条字符串,所以不用加引号
-
每句后面不用加分号
-
声明变量不需要声明类型,给变量赋值时自动识别类型,四大类型:①字符串(赋值要加引号)②整数③浮点数④布尔类型 ——例如:name=‘范冰冰’
-
条件语句:if 条件: (冒号不可省),
if内部的代码缩进保持一致(不可tab与空格混用)
elif = else if
elif 条件:if 条件:
elif 条件:
else: -
条件语句:while 条件: 冒号不可省。
-
注释:单行注释#,多行注释’’’ ‘’’
-
for:
for i in range(1,10)
从1-9 -
\:可以做转义字符,也可以用来换行但不影响输出
“this is the\
same line” -
字符串格式化:
print 'My age is %d' %num
%d会被num替换
%s表示字符串;%f表示小数,%.2f两位小数
替换多个print '%s's age is %d' % (name,num)
-
break:强制退出整个循环
-
continue:略过本次循环,直接进入下次循环
数字
- /:整除(3.0以后版本1/2=0.5); //:整除(1.0//2.0=0.0)
模块
-
引入模块:
from 模块名 import 方法名
引入random模块的一个函数例如:随机数
from random import randint
randint(随机下限,随机上限)
-
import random
:引入了整个random模块,使用方法时:random.randint(1,10)
-
重命名引入的方法:
from random import randint as r
函数
- 定义函数:
def function(参数1,参数2...):
默认参数:def function(参数1,参数2=''):
带默认值的参数要在尾部 - 调用函数:
function()
- return:return是函数的结束语句,return后面的值被作为这个函数的返回值。函数中任何地方的return被执行到的时候,这个函数就会结束。
List
-
定义列表
L=[1,2,3,4,4]
其中的元素可以是不同类型 -
访问:直接
print L[0]
从0开始
还可以负数操作:L[-1]倒数第一个元素;L[-3]倒数第三个元素 -
修改:直接赋值
L[0]=..
-
添加:
L.append(内容)
加到队尾 -
删除:
del L[0]
-
切片操作:
L[1:3]
从第二个元素到第三个元素,包含开始位置,不包含结束位置;两个数都可省,也可用负数 -
分割
split('')
:’'中的字符被当作分隔符,分割成一个List表;‘aaa’.split(‘a’)
将会得到[’’, ‘’, ‘’, ‘’],由四个空串组成的list -
连接
join(List list)
参数是被连接的List,要有一个字符串作为连接符,然后调用它的join()s = ‘;’
li = [‘apple’, ‘pear’, ‘orange’]
fruit = s.join(li)
print fruit
结果’apple;pear;orange’
等价于 ‘;’.join([‘apple’, ‘pear’, ‘orange’])
字符串
- 遍历:
word='ababab'
for i in word
- 访问:索引访问
word[0]
不能直接通过索引修改字符(与List不同) - 切片:
word[1:3]
与List一样 - 连接:
''.join(word)
与List一样
文件
- 打开文件:
open('文件名/路径')
可以用一个变量保存f=open('file.txt')
默认以只读形式打开文件 - 读取:
data=f.read()
readline() **😗*读取一行内容
readlines() **😗*把内容按行读至一个list - 关闭文件:
f.close()
- 写文件:
f=open('','w')
以写入模式打开;
原来文件中的内容会被新写入的内容覆盖掉,如果文件不存在,会自动创建文件。
以‘a’(appending)模式写入时不会覆盖,而是添加到文件
f.write('内容')
或f.writelines()
异常处理
try...except
:把可能引发异常的语句放在try-块中,把处理异常的语句放在except-块中。
字典
-
字典:键值对
d = {key1 : value1, key2 : value2 }
键/值对用冒号分割,每个对之间用逗号分割,整个字典包括在花括号中。注意:
1.键必须是唯一的
2.键只能是简单对象,比如字符串、整数、浮点数、bool值。 -
字典中的键/值对没有顺序,我们无法用索引访问字典中的某一项,而是要用键来访问。
-
如果键是字符串,通过键访问的时候就需要加引号,如果是数字作为键则不用。
print score['lxt']
或score.get('lxt')
-
改变某一项的值:直接赋值
score['lxt']=...
-
增加新项:给新键赋值
score['zcd']=...
zcd原本不存在 -
删除:
del score['lxt']