python语法基础
python链式赋值
链式赋值:同一个对象赋值给多个变量。如x=y=123,相当于:x=123;y=123
python系列解包赋值
系列数据赋值给对应相同个数的变量。如:
>>>a,b,c=4,5,6
相当于:a=4;b=5;c=6;
利用系列解包赋值可以实现变量交换:
python中的常量
python不支持常量,即没有语法规则限制改变一个常量的值。我们只能约定常量的命名规则(全大写,单词之间用下划线分开),以及在程序逻辑上不对常量的值做出修改。
python最基本内置数据类型
python中每个对象都有类型,最基本的内置数据类型:
- 整型(int):整数,如:1,2,3
- 浮点型(float):小数,如:3.14或科学计数法314e-2
- 布尔型:表示真假,仅包含:True,False
- 字符串型:由字符组成的序列,如:”abc“、”哈哈哈“
python数字运算符
python支持整数和浮点数,我们可以对数字做如下运算:
运算符
|
说明
|
+
|
加法
|
-
|
减法
|
*
|
乘法
|
/
|
浮点数除法
|
//
|
整数除法
|
%
|
模运算(取余)
|
**
|
幂
|
注:当除数为0时,会产生异常。
使用divmod()函数可以同时得到商和余数:
int整型
python中除了十进制,还有二进制(0b或0B)、八进制(0o或0O)和十六进制(0x或0X)
这三种进制可以非常方便的进行“位运算”操作。
使用int()实现类型转换:
1.浮点数直接舍去小数部分。
2.布尔值True转为1,False转为0。
3.字符串符合整数格式(浮点数格式不行)则直接转成对应整数,否则会报错。
自动转型
整数和浮点数混合运算时,表达式结果自动转型成浮点数。
python整数的范围
python2中,int类型是32位,long类型是64位。
python3中,int可以存储任意大小的整数,long类型被取消。
float浮点型
浮点数,称为float。浮点数可以用科学计数法表示,如:3.14表示成,314e-2或314E-2。这些数字在内存中也是按照科学计数法存储。
类型转换和四舍五入
1.类似int(),我们可以使用float()将其他类型转换为浮点数。
2.整数和浮点数混合运算时,表达式结果自动转型成浮点数。
3.round(value)可以返回四舍五入的值。
注:float()类型转换不是把原有对象的type修改了,而是生成了一个新的type是float的对象。
#mermaid-svg-sq7d30RE6qJCudZk .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-sq7d30RE6qJCudZk .label text{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .node rect,#mermaid-svg-sq7d30RE6qJCudZk .node circle,#mermaid-svg-sq7d30RE6qJCudZk .node ellipse,#mermaid-svg-sq7d30RE6qJCudZk .node polygon,#mermaid-svg-sq7d30RE6qJCudZk .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-sq7d30RE6qJCudZk .node .label{text-align:center;fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .node.clickable{cursor:pointer}#mermaid-svg-sq7d30RE6qJCudZk .arrowheadPath{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-sq7d30RE6qJCudZk .flowchart-link{stroke:#333;fill:none}#mermaid-svg-sq7d30RE6qJCudZk .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-sq7d30RE6qJCudZk .edgeLabel rect{opacity:0.9}#mermaid-svg-sq7d30RE6qJCudZk .edgeLabel span{color:#333}#mermaid-svg-sq7d30RE6qJCudZk .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-sq7d30RE6qJCudZk .cluster text{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-sq7d30RE6qJCudZk .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-sq7d30RE6qJCudZk text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-sq7d30RE6qJCudZk .actor-line{stroke:grey}#mermaid-svg-sq7d30RE6qJCudZk .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-sq7d30RE6qJCudZk .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-sq7d30RE6qJCudZk #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-sq7d30RE6qJCudZk .sequenceNumber{fill:#fff}#mermaid-svg-sq7d30RE6qJCudZk #sequencenumber{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk #crosshead path{fill:#333;stroke:#333}#mermaid-svg-sq7d30RE6qJCudZk .messageText{fill:#333;stroke:#333}#mermaid-svg-sq7d30RE6qJCudZk .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-sq7d30RE6qJCudZk .labelText,#mermaid-svg-sq7d30RE6qJCudZk .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-sq7d30RE6qJCudZk .loopText,#mermaid-svg-sq7d30RE6qJCudZk .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-sq7d30RE6qJCudZk .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-sq7d30RE6qJCudZk .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-sq7d30RE6qJCudZk .noteText,#mermaid-svg-sq7d30RE6qJCudZk .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-sq7d30RE6qJCudZk .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-sq7d30RE6qJCudZk .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-sq7d30RE6qJCudZk .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-sq7d30RE6qJCudZk .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .section{stroke:none;opacity:0.2}#mermaid-svg-sq7d30RE6qJCudZk .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-sq7d30RE6qJCudZk .section2{fill:#fff400}#mermaid-svg-sq7d30RE6qJCudZk .section1,#mermaid-svg-sq7d30RE6qJCudZk .section3{fill:#fff;opacity:0.2}#mermaid-svg-sq7d30RE6qJCudZk .sectionTitle0{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .sectionTitle1{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .sectionTitle2{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .sectionTitle3{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-sq7d30RE6qJCudZk .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .grid path{stroke-width:0}#mermaid-svg-sq7d30RE6qJCudZk .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-sq7d30RE6qJCudZk .task{stroke-width:2}#mermaid-svg-sq7d30RE6qJCudZk .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .taskText:not([font-size]){font-size:11px}#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-sq7d30RE6qJCudZk .task.clickable{cursor:pointer}#mermaid-svg-sq7d30RE6qJCudZk .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-sq7d30RE6qJCudZk .taskText0,#mermaid-svg-sq7d30RE6qJCudZk .taskText1,#mermaid-svg-sq7d30RE6qJCudZk .taskText2,#mermaid-svg-sq7d30RE6qJCudZk .taskText3{fill:#fff}#mermaid-svg-sq7d30RE6qJCudZk .task0,#mermaid-svg-sq7d30RE6qJCudZk .task1,#mermaid-svg-sq7d30RE6qJCudZk .task2,#mermaid-svg-sq7d30RE6qJCudZk .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutside0,#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutside2{fill:#000}#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutside1,#mermaid-svg-sq7d30RE6qJCudZk .taskTextOutside3{fill:#000}#mermaid-svg-sq7d30RE6qJCudZk .active0,#mermaid-svg-sq7d30RE6qJCudZk .active1,#mermaid-svg-sq7d30RE6qJCudZk .active2,#mermaid-svg-sq7d30RE6qJCudZk .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-sq7d30RE6qJCudZk .activeText0,#mermaid-svg-sq7d30RE6qJCudZk .activeText1,#mermaid-svg-sq7d30RE6qJCudZk .activeText2,#mermaid-svg-sq7d30RE6qJCudZk .activeText3{fill:#000 !important}#mermaid-svg-sq7d30RE6qJCudZk .done0,#mermaid-svg-sq7d30RE6qJCudZk .done1,#mermaid-svg-sq7d30RE6qJCudZk .done2,#mermaid-svg-sq7d30RE6qJCudZk .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-sq7d30RE6qJCudZk .doneText0,#mermaid-svg-sq7d30RE6qJCudZk .doneText1,#mermaid-svg-sq7d30RE6qJCudZk .doneText2,#mermaid-svg-sq7d30RE6qJCudZk .doneText3{fill:#000 !important}#mermaid-svg-sq7d30RE6qJCudZk .crit0,#mermaid-svg-sq7d30RE6qJCudZk .crit1,#mermaid-svg-sq7d30RE6qJCudZk .crit2,#mermaid-svg-sq7d30RE6qJCudZk .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-sq7d30RE6qJCudZk .activeCrit0,#mermaid-svg-sq7d30RE6qJCudZk .activeCrit1,#mermaid-svg-sq7d30RE6qJCudZk .activeCrit2,#mermaid-svg-sq7d30RE6qJCudZk .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-sq7d30RE6qJCudZk .doneCrit0,#mermaid-svg-sq7d30RE6qJCudZk .doneCrit1,#mermaid-svg-sq7d30RE6qJCudZk .doneCrit2,#mermaid-svg-sq7d30RE6qJCudZk .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-sq7d30RE6qJCudZk .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-sq7d30RE6qJCudZk .milestoneText{font-style:italic}#mermaid-svg-sq7d30RE6qJCudZk .doneCritText0,#mermaid-svg-sq7d30RE6qJCudZk .doneCritText1,#mermaid-svg-sq7d30RE6qJCudZk .doneCritText2,#mermaid-svg-sq7d30RE6qJCudZk .doneCritText3{fill:#000 !important}#mermaid-svg-sq7d30RE6qJCudZk .activeCritText0,#mermaid-svg-sq7d30RE6qJCudZk .activeCritText1,#mermaid-svg-sq7d30RE6qJCudZk .activeCritText2,#mermaid-svg-sq7d30RE6qJCudZk .activeCritText3{fill:#000 !important}#mermaid-svg-sq7d30RE6qJCudZk .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-sq7d30RE6qJCudZk g.classGroup text .title{font-weight:bolder}#mermaid-svg-sq7d30RE6qJCudZk g.clickable{cursor:pointer}#mermaid-svg-sq7d30RE6qJCudZk g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-sq7d30RE6qJCudZk g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-sq7d30RE6qJCudZk .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-sq7d30RE6qJCudZk .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-sq7d30RE6qJCudZk .dashed-line{stroke-dasharray:3}#mermaid-svg-sq7d30RE6qJCudZk #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk .commit-id,#mermaid-svg-sq7d30RE6qJCudZk .commit-msg,#mermaid-svg-sq7d30RE6qJCudZk .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-sq7d30RE6qJCudZk g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-sq7d30RE6qJCudZk g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-sq7d30RE6qJCudZk g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-sq7d30RE6qJCudZk .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-sq7d30RE6qJCudZk .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-sq7d30RE6qJCudZk .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-sq7d30RE6qJCudZk .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-sq7d30RE6qJCudZk .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-sq7d30RE6qJCudZk .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-sq7d30RE6qJCudZk .edgeLabel text{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-sq7d30RE6qJCudZk .node circle.state-start{fill:black;stroke:black}#mermaid-svg-sq7d30RE6qJCudZk .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-sq7d30RE6qJCudZk #statediagram-barbEnd{fill:#9370db}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-state .divider{stroke:#9370db}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-sq7d30RE6qJCudZk .note-edge{stroke-dasharray:5}#mermaid-svg-sq7d30RE6qJCudZk .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-sq7d30RE6qJCudZk .error-icon{fill:#522}#mermaid-svg-sq7d30RE6qJCudZk .error-text{fill:#522;stroke:#522}#mermaid-svg-sq7d30RE6qJCudZk .edge-thickness-normal{stroke-width:2px}#mermaid-svg-sq7d30RE6qJCudZk .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-sq7d30RE6qJCudZk .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-sq7d30RE6qJCudZk .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-sq7d30RE6qJCudZk .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-sq7d30RE6qJCudZk .marker{fill:#333}#mermaid-svg-sq7d30RE6qJCudZk .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-sq7d30RE6qJCudZk {color: rgba(0, 0, 0, 0.75);font: ;}
float
a=id1
id1-tpye=int-value=3
id2-tpye=flaot-value=3.0
python增强型赋值运算符
运算符+、-、/、//、%和**和赋值符=结合可以构成“增强型赋值运算符”。如,a=a+1等价于a+=1.
运算符
|
例子
|
等价
|
+=
|
a+=2
|
a=a+2
|
-=
|
a-=2
|
a=a-2
|
*=
|
a*=2
|
a=a*2
|
/=
|
a/=2
|
a=a/2
|
//=
|
a//=2
|
a=a//2
|
**=
|
a**=2
|
a=a**2
|
%=
|
a%=2
|
a=a%2
|
注:“+=”中间不能加空格
python时间表示
python中可以通过time.time()获得当前时刻(是距离1970年1月1日00:00:00(unix时间点)的时间),返回的值是以秒为单位,带微秒精度的浮点值。
练习:定义多点坐标,绘制折线,并计算起始点和终点的距离
>>>import turtle
>>>import math
>>>turtle.penup()
>>>turtle.goto(100,100)
>>>turtle.pendown()
>>>turtle.goto(100,0)
>>> turtle.goto(-100,0)
>>>turtle.goto(-100,-100)
>>>math.sqrt((100+100)**2+(100+100)**2)
>>> turtle.write("起始点和终点的距离是282.84")
布尔值和布尔相关运算
python2中没有布尔值,直接用数字0表示false,1表示true。
python3中,把true和false定义成为关键字,但其本质还是1和0,还可以和数字相加。
比较运算符
运算符
|
描述
|
实例(其中a=15,b=30)
|
==
|
等于-比较对象的值是否相等
|
(a==b)返回false
|
!=
|
不等于-比较两对象的值是否不等
|
(a!=b)true
|
>
|
大于-返回x是否大于y
|
(a>b) false
|
<
|
小于-返回x是否小于y
|
(a<b)true
|
>=
|
大于等于-返回x是否大于等于y
|
(a>=b) false
|
<=
|
小于等于-返回x是否小于等于y
|
(a<=b) true
|
逻辑运算符
运算符
|
格式
|
说明
|
or 逻辑或
|
x or y
|
x为true,则不计算y,直接返回true;x为false,则返回y
|
and 逻辑与
|
x and y
|
x为true,则返回y的值;x为false,则不计算y,直接返回false
|
not 逻辑非
|
not x
|
x为true,返回false;x为false,返回true
|
同一运算符
同一运算符用于比较两对象的存储单元,实际比较的是对象的地址。
运算符
|
描述
|
is
|
判断两个标识符是不是引用同一个对象
|
is not
|
判断两个标识符是不是引用不同对象
|
is与==的区别:
- is用于判断两个变量引用对象是否为同一个,是比较对象的地址。
- ==用于判断变量引用对象的值是否相等,默认调用对象的_eq_()方法。
整数缓存问题:python在命令行中执行时,会对比较小的整数对象进行缓存(范围是[-5,256]),在这个范围里变量的引用是同一个对象。在文件执行或pycharm中有不同只要大于-5的整数都可以被缓存
字符串
字符串基本特点
字符串本质是字符序列。python的字符串在定义后不可变。python不支持单字符类型,单字符也作为一个字符串使用。
字符串的编码
python3直接支持Unicode,可以表示任何书面语言的字符。ASCII码是Unicode的子集。
使用内置函数ord()可以把字符转换成对应的Unicode码;
使用内置函数chr()可以把十进制数字转换成对应的字符。
创建字符串
我们可以通过单引号或者双引号创建字符串。如,a=‘abc’,b=“bbc”
使用两种引号的好处是,可以创建本身就包含引号的字符串,而不使用转义字符。
连续三个单引号或三个双引号,可以帮助我们创建多行字符串。
空字符串和len()函数
python允许空字符串的存在,不包含任何字符且长度为0.
len()用于计算字符串含有多少个字符。
转义字符
我们可以使用“+特殊字符”,实现某些难以用字符表示的效果。
转义字符
|
描述
|
\ (在行尾时)
|
续行符
|
\
|
反斜杠
|
’
|
单引号
|
"
|
双引号
|
\b
|
退格
|
\n
|
换行
|
\t
|
横向制表符
|
\r
|
回车
|
字符串拼接
1.可以用+将多个字符串拼接起来。如,‘aa’+‘bb’–>‘aabb’
如果+两边都是字符串,则拼接。
如果+两边都是数字,则加法运算。
如果+两边类型不同,则出错。
2.可以将多个字面字符串直接放到一起实现拼接。如,‘aa’ ‘bb’–>‘aabb’
注:字符串拼接会形成一个新的对象。
字符串复制
使用*可以实现字符串复制。
字符串不换行打印
通过参数end=“任意字符串”,实现末尾添加内容:
从控制台读取字符串
使用input()函数从控制台入去键盘输入内容。
str()实现数字转型字符串
当我们调用print()函数时,解释器自动调用了str()将非字符串的对象转换成了字符串。
使用[]提取字符
字符串本质就是字符序列,每一个字符都有一个自己的索引编号(从0开始)可以叫做索引也可以叫做偏移量。
正向搜索:从左到右,第一个偏移量是0,第二个偏移量是1,以此类推,直到len(str)-1为止。
反向搜索:从右到左,第一个偏移量是-1,倒数第二个偏移量是-2,以此类推,直到-len(str)为止。
replace()实现字符串替换
格式:replace(“待替换字符”,“替换字符”)
尽管得到了被改变的字符串,但实际上我们是创建了一个新的字符串对象,并指向了变量a,并没有修改以前的字符串。
字符串切片slice操作
切片slice操作可以让我们快速的提取子字符串,标准格式:
[起始偏移量start:终止偏移量end:步长step]
注:存在起始到终止,通常都是包头不包尾