Python基础语法Word文档下载推荐.docx
- 文档编号:18824791
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:33
- 大小:87.54KB
Python基础语法Word文档下载推荐.docx
《Python基础语法Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Python基础语法Word文档下载推荐.docx(33页珍藏版)》请在冰豆网上搜索。
。
-减得到负数或是一个数减去另一个数-5.2得到一个负数。
50-24得到26。
*乘两个数相乘或是返回一个被重复若干次的字符串2*3得到6。
la'
*3得到'
lalala'
**幂
返回x的y次幂
3**4得到81(即3*3*3*3)
/除x除以y4/3得到1(整数的除法得到整数结果)。
4.0/3或4/3.0得到1.3333333333333333
//取整除返回商的整数部分4//3.0得到1.0
%取模返回除法的余数8%3得到2。
-25.5%2.25得到1.5
<
左移把一个数的比特向左移一定数目(每个数在内存中都表示为比特或二进制数字,即0和1)2<
2得到8。
——2按比特表示为10
>
右移把一个数的比特向右移一定数目11>
1得到5。
——11按比特表示为1011,向右移动1比特后得到101,即十进制的5。
&
按位与数的按位与5&
3得到1。
|按位或数的按位或5|3得到7。
^按位异或数的按位异或5^3得到6
~按位翻转x的按位翻转是-(x+1)~5得到6。
小于返回x是否小于y。
所有比较运算符返回1表示真,返回0表示假。
这分别与特殊的变量True和False等价。
注意,这些变量名的大写。
5<
3返回0(即False)而3<
5返回1(即True)。
比较可以被任意连接:
3<
7返回True。
大于返回x是否大于y5>
3返回True。
如果两个操作数都是数字,它们首先被转换为一个共同的类型。
否则,它总是返回False。
=小于等于返回x是否小于等于yx=3;
y=6;
x<
=y返回True。
=大于等于返回x是否大于等于yx=4;
y=3;
x>
==等于比较对象是否相等x=2;
y=2;
x==y返回True。
x='
str'
;
y='
stR'
x==y返回False。
!
=不等于比较两个对象是否不相等x=2;
x!
not布尔“非”如果x为True,返回False。
如果x为False,它返回True。
x=True;
noty返回False。
and布尔“与”如果x为False,xandy返回False,否则它返回y的计算值。
x=False;
y=True;
xandy,由于x是False,返回False。
在这里,Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。
这个现象称为短路计算。
or布尔“或”如果x是True,它返回True,否则它返回y的计算值。
y=False;
xory返回True。
短路计算在这里也适用。
2.运算符优先级(从低到高)
运算符描述
lambdaLambda表达式
or布尔“或”
and布尔“与”
notx布尔“非”
in,notin成员测试
is,isnot同一性测试
,<
=,>
,>
=,!
=,==比较
|按位或
^按位异或
按位与
移位
+,-加法与减法
*,/,%乘法、除法与取余
+x,-x正负号
~x按位翻转
**指数
x.attribute属性参考
x[index]下标
x[index:
index]寻址段
f(arguments...)函数调用
(experession,...)绑定或元组显示
[expression,...]列表显示
{key:
datum,...}字典显示
expression,...'
字符串转换
3.python控制台输出使用print
print"
abc"
#打印abc并换行
abc%s"
%"
d"
#打印abcd
abc%sef%s"
%("
"
g"
) #打印abcdefg
三、控制流
1.if语句
i=10
n=int(raw_input("
enteranumber:
"
))
ifn==i:
print"
equal"
elifn<
i:
lower"
else:
higher"
2.while语句
whileTrue:
pass
#else语句可选,当while为False时,else语句被执行。
pass是空语句。
3.for循环for..in
foriinrange(0,5):
printi
#打印0到4
注:
当for循环结束后执行else语句;
range(a,b)返回一个序列,从a开始到b为止,但不包括b,range默认步长为1,可以指定步长,range(0,10,2);
4.break语句
终止循环语句,如果从for或while中终止,任何对应循环的else将不执行。
5.continue语句
continue语句用来调过当前循环的剩余语句,然后继续下一轮循环。
四、函数
函数通过def定义。
def关键字后跟函数的标识符名称,然后跟一对圆括号,括号之内可以包含一些变量名,该行以冒号结尾;
接下来是一块语句,即函数体。
defsumOf(a,b):
returna+b
1.函数形参
函数中的参数名称为‘形参’,调用函数时传递的值为‘实参’
2.局部变量
在函数内定义的变量与函数外具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是局部的。
这称为变量的作用域。
global语句,为定义在函数外的变量赋值时使用global语句。
deffunc():
globalx
xis"
x
x=1
x=3
func()
printx
#3
#1
3.默认参数
通过使用默认参数可以使函数的一些参数是‘可选的’。
defsay(msg,times=1):
printmsg*times
say("
peter"
)
3)
注意:
只有在形参表末尾的那些参数可以有默认参数值,即不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参,只是因为赋给形参的值是根据位置而赋值的。
4.关键参数
如果某个函数有很多参数,而现在只想指定其中的部分,那么可以通过命名为这些参数赋值(称为‘关键参数’)。
优点:
不必担心参数的顺序,使函数变的更加简单;
假设其他参数都有默认值,可以只给我们想要的那些参数赋值。
deffunc(a,b=2,c=3):
ais%s,bis%s,cis%s"
%(a,b,c)
func
(1)#ais1,bis2,cis3
func(1,5)#ais1,bis5,cis3
func(1,c=10)#ais1,bis2,cis10
func(c=20,a=30)#ais30,bis2,cis20
5.return语句
return语句用来从一个函数返回,即跳出函数。
可从函数返回一个值。
没有返回值的return语句等价于returnNone。
None表示没有任何东西的特殊类型。
6.DocStrings(文档字符串)
'
Thisisself-definedfunction
Donothing'
printfunc.__doc__
#Thisisself-definedfunction
#
#Donothing
五、模块
模块就是一个包含了所有你定义的函数和变量的文件,模块必须以.py为扩展名。
模块可以从其他程序中‘输入’(import)以便利用它的功能。
在python程序中导入其他模块使用'
import'
所导入的模块必须在sys.path所列的目录中,因为sys.path第一个字符串是空串'
即当前目录,所以程序中可导入当前目录的模块。
1.字节编译的.pyc文件
导入模块比较费时,python做了优化,以便导入模块更快些。
一种方法是创建字节编译的文件,这些文件以.pyc为扩展名。
pyc是一种二进制文件,是py文件经编译后产生的一种bytecode,而且是跨平台的(平台无关)字节码,是有python虚拟机执行的,类似于
java或.net虚拟机的概念。
pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的。
2.from..import
如果想直接使用其他模块的变量或其他,而不加'
模块名+.'
前缀,可以使用from..import。
例如想直接使用sys的argv,fromsysimportargv或fromsysimport*
3.模块的__name__
每个模块都有一个名称,py文件对应模块名默认为py文件名,也可在py文件中为__name__赋值;
如果是__name__,说明这个模块被用户
单独运行。
4.dir()函数
dir(sys)返回sys模块的名称列表;
如果不提供参数,即dir(),则返回当前模块中定义名称列表。
del->
删除一个变量/名称,del之后,该变量就不能再使用。
六、数据结构
python有三种内建的数据结构:
列表、元组和字典。
1.列表
list是处理一组有序项目的数据结构,列表是可变的数据结构。
列表的项目包含在方括号[]中,eg:
[1,2,3],空列表[]。
判断列表中是否包含某项可以使用in,比如l=[1,2,3];
print1inl;
#True;
支持索引和切片操作;
索引时若超出范围,则IndexError;
使用函数len()查看长度;
使用del可以删除列表中的项,eg:
dell[0]#如果超出范围,则IndexError
list函数如下:
append(value) ---向列表尾添加项value
l=[1,2,2]
l.append(3)#[1,2,2,3]
count(value) ---返回列表中值为value的项的个数
printl.count
(2)#2
extend(list2) ---向列表尾添加列表list2
l1=[10,20]
l.extend(l1)
printl#[1,2,2,10,20]
index(value,[start,[stop]]) ---返回列表中第一个出现的值为value的索引,如果没有,则异常ValueError
a=4
try:
printl.index(a)
exceptValueError,ve:
thereisno%dinlist"
%a
insert(i,value) ---向列表i位置插入项vlaue,如果没有i,则添加到列表尾部
l.insert(1,100)
printl#[1,100,2,2]
l.insert(100,1000)
printl#[1,100,2,2,1000]
pop([i]) ---返回i位置项,并从列表中删除;
如果不提供参数,则删除最后一个项;
如果提供,但是i超出索引范围,则异常IndexError
l=[0,1,2,3,4,5]
printl.pop()#5
printl#[0,1,2,3,4]
printl.pop
(1)#1
printl#[0,2,3,4]
l.pop(100)
exceptIndexError,ie:
indexoutofrange"
remove(value) ---删除列表中第一次出现的value,如果列表中没有vlaue,则异常ValueError
l=[1,2,3,1,2,3]
l.remove
(2)
printl#[1,3,1,2,3]
l.remove(10)
thereisno10inlist"
reverse() ---列表反转
l=[1,2,3]
l.reverse()
printl#[3,2,1]
sort(cmp=None,key=None,reverse=False) ---列表排序
【PythonLibraryReference】
cmp:
cmpspecifiesacustomcomparisonfunctionoftwoarguments(iterableelements)whichshouldreturnanegative,zeroorpositivenumberdependingonwhetherthefirstargumentisconsideredsmallerthan,equalto,orlargerthanthesecondargument:
cmp=lambdax,y:
cmp(x.lower(),y.lower())"
key:
keyspecifiesafunctionofoneargumentthatisusedtoextractacomparisonkeyfromeachlistelement:
"
key=str.lower"
reverse:
reverseisabooleanvalue.IfsettoTrue,thenthelistelementsaresortedasifeachcomparisonwerereversed.Ingeneral,thekeyandreverseconversionprocessesaremuchfasterthanspecifyingan
equivalentcmpfunction.Thisisbecausecmpiscalledmultipletimesforeachlistelementwhilekeyandreversetoucheachelementonlyonce.
l5=[10,5,20,1,30]
l5.sort()
printl5#[1,5,10,20,30]
l6=["
bcd"
cde"
bbb"
]
l6.sort(cmp=lambdas1,s2:
cmp(s1[0],s2[1]))
printl6#['
abc'
'
bbb'
bcd'
cde'
l7=["
faf"
l7.sort(key=lambdas:
s[1])
printl7#['
faf'
2.元组
tuple和list十分相似,但是tuple是不可变的,即不能修改tuple,元组通过圆括号中用逗号分割的项定义;
可以使用in
查看一个元素是否在tuple中。
空元组();
只含有一个元素的元组("
a"
)#需要加个逗号
tuple比list速度快;
对不需要修改的数据进行‘写保护’,可以是代码更安全
tuple与list可以相互转换,使用内置的函数list()和tuple()。
printl#[1,2,3]
t=tuple(l)
printt#(1,2,3)
l1=list(t)
printl1#[1,2,3]
元组最通常的用法是用在打印语句,如下例:
name="
PeterZhang"
age=25
Name:
%s;
Age:
%d"
%(name,age)
#Name:
PeterZhang;
25
函数如下:
count(value) ---返回元组中值为value的元素的个数
t=(1,2,3,1,2,3)
printt.count
(2)#2
printt.index(3)#2
printt.index(4)
thereisno4intuple"
#thereisno4intuple
3.字典
字典由键值对组成,键必须是唯一的;
eg:
d={key1:
value1,key2:
value2};
空字典用{}表示;
字典中的键值对是没有顺序的,如果想要
一个特定的顺序,那么使用前需要对它们排序;
d[key]=value,如果字典中已有key,则为其赋值为value,否则添加新的键值对key/value;
使
用deld[key]可以删除键值对;
判断字典中是否有某键,可以使用in或notin;
d={}
d["
1"
]="
one"
2"
two"
3"
three"
deld["
forkey,valueind.items():
%s-->
%s"
%(key,value)
#1-->
one
#2-->
two
dict函数如下:
clear() ---删除字典中所有元素
d1={"
:
}
d1.clear()
printd1#{}
copy() ---返回字典的一个副本(浅复制)
d2=d1.copy()
printd2#{'
1'
one'
2'
two'
dict.fromkeys(seq,val=None)---创建并返回一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值(默认为None)
t=(1,2,3)
d3={}.fromkeys(l)
printd3#{1:
None,2:
None,3:
None}
d4={}.fromkeys(t,"
default"
printd4#{1:
default'
2:
3:
get(key,[default]) ---返回字典dict中键key对应值,如果字典中不存在此键,则返回default的值(default默认值为None)
d5={1:
printd5.get
(1)#one
printd5.get(5)#None
printd5.get(5,"
test"
)#test
has_key(key) ---判断字典中是否有键key
d6={1:
printd6.has_key
(1)#True
printd6.has_key(5)#
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 基础 语法