导航:首页 > 编程语言 > python目标和表达式区别

python目标和表达式区别

发布时间:2023-11-16 16:15:15

python死磕——Python赋值语句、表达式以及打印

a赋值为's' b赋值为'p'

在这个赋值语句中,a匹配第一个字母,剩下的用于匹配b:a赋值为's',b赋值为'pam'

在这个语句中spam ham都会赋值成对相同的字符串对象'lunch'的引用

赋值右侧可以是任何类型的序列,只要长度相等即可

在Python3.0中可以允许我们使用更为通用的扩展解包语法,在python2.x中要求赋值目标中的项数和主体的数目必须一致:否则就会报错

如果想使用通用方法就需要使用分片。

在Python3.0中一个带有单个星号的名称,可以在赋值目标中使用,以指定对于序列的一个更为通用的匹配

带星号的名称可能只匹配单个的项

X+=Y X&=Y X-=Y X|=Y
X =Y X^=Y X/=Y X>>=Y
X%=Y X<<=Y X
*=Y X//=Y
增强赋值语句的有点

对于增强赋值语句,对列表是做原处修改的意思。而'+'总是生成新对象。

上述的例子中,由于'+'会生成一个新的列表对象,所以M的值并没有发生改变

犹豫增强赋值对于可变的数据类型时在原处修改值,所以使M的值发生了变化

对列表调用append、sort、reverse这类在原处修改的运算,一定是对列表做原处的修改,但这些方法在列表修改后并不会把列表返回,而是返回的None对象

print默认的把对象打印到stdout流,添加了一些格式化。

格式中sep、end、和file部分如果给出的话,必须作为关键字参数给定。必须使用一种特殊的"name = value"语法来根据名称而不是根据位置来传递参数。

在Python3.0和Python2.6中,打印都默认地发送到标准输出流。也可以发送到一个文本文件’
print只是Python的人性化的特性,它提供了sys.stdout对象的简单接口

将输出流重定向到文件后print语句直接打印内容到文件

Ⅱ Python其实很简单 第六章 基本运算

Python中将算式称为表达式。数学上算式是用数学语言、数学符号来表达某种关系、某种运算、某种性质的,同样的,在Python中,表达式也是用运算符将各种数据类型的数据连接起来。

数据的类型在前面已经介绍过了,下面介绍一些最常用到的运算符。

6.1算术运算

算术运算符是用于处理四则运算的运算符,常用的算术运算符如下表所示。

算术表达式就是用算术运算符将各种类型的数据连接起来,算术运算的规则和数学中一致。除了数学中用到的四则运算符“ 、-、*、/ ”外,要特别注意“取模(%)”、“幂(**)”、“整除(//)”的用法。

6.2给变量赋值

最常用的赋值运算符是“=”,“a=b”的意思就是将值b赋值给变量a。

Python中还一些带有运算功能的赋值方法,含义为“先计算,后赋值”如:

以下假设变量:a=10,b=20

“+=”,读作“加赋值”,如a+=b,相当于a=a+b, 则a被赋值为30;

“-=”,读作“减赋值”,如a-=b,相当于a=a-b, 则a被赋值为-10;

“*=”,读作“乘赋值”,如a*=b,相当于a=a*b, a被赋值为200;

“/=”,读作“除赋值”,如a/=b,相当于a=a/b, a被赋值为0.5;

“%=”,读作“取余数赋值”,如a%=b,相当于a=a%b, a被赋值为10;

“**=”,读作“幂赋值”,如a**=b,相当于a=a**b, a被赋值为100000000000000000000;

“//=”,读作“取整数赋值”,如a//=b,相当于a=a//b, a被赋值为0;

6.3关系运算

关系运算符,也叫比较运算符,用于比较两个变量或表达式运算结果之间的大小关系。关系表达式是用关系运算符将变量或表达式连接起来的表达式,其运算结果为一个布尔值,即True或False。

Python3.0的关系运算符有:“大于>”、“小于=”、“小于或等于<=”。

还有一个特殊的关系运算符“值1变量值2”,如:

>>> a=10

>>> b=20

>>> c=15

>>> print(a<b<c) p=""> </b<c)>

False

>>> print(a<c<b) p=""> </c<b)>

True

6.4逻辑运算

逻辑运算符包括“逻辑与and”、“逻辑或or”、“逻辑非not”,具体用法见下表。

以下假设变量 a 为 10, b为 20:


在上表中,变量a和变量b都是非0的数,被当做值为True的变量参与逻辑运算。

Ⅲ python表达式和语句的区别

语句呢范围更大,python任何一行代码都可以称为语句,语句是独立功能实现的最小单位,就想我们写作文的每一句话就是一个语句,而表达式都是特定功能的一种表达方式,也可以理解为拥有特殊功能的语句

Ⅳ Python表达式是什么

python表达式是值,变量和操作符(或叫运算符)的组合。多带带的一个值是一个表达式,多带带的变量也是一个表达式。运算符和操作数一起构成表达式,操作数可以使用标识符表示,如a=3;b=2;c=a*b,表达式是python程序最常见的代码。
Python代码由表达式和语句组成,并由Python解释器负责执行,它们的主要区别是“表达式”是一个值,它的结果一定是一个Python对象。当Python解释器计算它时结果可以是任何对象。例如42,1+2,int(‘123’),range(10)等。
表达式是有优先级的,最简单的如我们赋值运算符中的数学算式:“0 * 1 + 2”和“0 + 1 * 2”结果一定不一样,在“0 + 1 *
2”中优先运算“1 * 2”。当然并非是只有赋值运算才优先级,并且在各种运算符之间也有优先级。
条件表达式基本语法:结果1 if 表达式 else
结果2,结果1为表达式结果为True的值,结果2位表达式结果为False的值。语法演变:variable = [结果1] if [表达式] else
[结果2]。

Ⅳ Python其实很简单 第十一章 正则表达式

正则表达式是一个特殊的字符序列,它用来检查一个字符串是否与某种模式匹配。正则表达式在编译程序中至关重要,但并不是每个人都需要特别深入的学习和掌握。在此,只介绍一些最基本的应用。

1、元字符

元字符是构成正则表达式的一些特殊字符。在正则表达式中,元字符被赋予了新的含义。

下面介绍一些常用的元字符及其含义:

. 匹配除换行符以外的任意字符。

w 匹配字母、数字、下划线或汉字。

W 匹配w所匹配的字符以外的字符。

s 匹配单个空白符(包括Tab键和换行符)。

S 匹配除s匹配的字符以外的字符。

d 匹配数字。

b 匹配单词的分界符,如:空格、标点符号或换行符。

^ 匹配字符串的开始

$ 匹配字符串的结束

2、限定符

限定符是在正则表达式中用来指定数量的字符。常用的限定符有:

? 匹配前面的字符0或1次。如:zo?m可以匹配zom和zm,但不能匹配 zoom

+ 匹配前面的字符1或n次。如:zo?m可以匹配zom和zoom,但不能匹配zm

* 匹配前面的字符0或n次。如:zo?m可以匹配zom、zoom和zm

{n} 匹配前面的字符n次。如:zo{2}m可以匹配zoom,但不能匹配zom和zm

{n,} 匹配前面的字符至少n次。如:zo{1,}m可以匹配zom和zoom,但不能匹配zm

{n,m} 匹配前面的字符至少n次,最多m次。如:zo{1,2}m可以匹配zom和zoom,但不能匹配zm

3、方括号”[ ]”的用途

方括号“[ ]”里可以列出某个字符范围。如:[aeiou]表示匹配任意一个元音字母,[zqsl]表示匹配姓氏“赵钱孙李”的拼音第一个字母。

4、排除字符

方括号”[ ]”中的“^”字符表示排除的意思,如:[^aeiou]表示匹配任意一个非元音字母的字符。

5、选择字符

字符“|”相当于“或”。如:(^d{3}[-]d{8})|(^d{4}[-]d{7})$可以匹配形如” - ”或“ - ”的电话号码格式。

6、转义字符

对于已经用于定义元字符和限定符的字符,需要加转义符“”来表示。

如:为了匹配形如“192.168.0.1”的IPv4地址(1~255.0~255.0~255.0~255),可以用这样的正则表达式:^(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]).(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$

这里解释一下第一段IP地址的规则,取值范围为1~255,可分解为以下情况:

250~255:25[0-5];

200~249:2[0-4][0-9];

100~199:[01]{1}[0-9]{2};

0~99: [0-9]{1}[1-9]

再加上”.”: .

其他三段地址和第一段相似。

7、“( )”可以用于分组

在正则表达式中,用“( )”括起来的部分是一个整体。

8、r(或R)的意义

在正则表达式中,为了保证模式字符串为原生字符串(没有经过加工处理的字符串),可以在模式字符串前加上一个字符‘r’或‘R’。例如:

# 这里用到对的re.match()方法接下来介绍

>>> import re # 导入re模块

>>> re.match('bPy[a-z]+','Python') # 表达式'bPy[a-z]+'不能匹配’Python’

>>> re.match('bPy[a-z]+','Python') # 表达式'bPy[a-z]+'可以匹配’Python’

在上述代码中,原本要用作匹配单词开始或结束的元字符’b’在表达式中字符串中会被视为转义一个字符‘b’,为了转义’b’就不得不再加一个’’符号。

也可以采用下面的方法:

>>> re.match(r'bPy[a-z]+','Python') #加字符’r’,可以保证原生字符串

9、match()方法

Match()方法 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match() 就返回 none。

语法格式:

re.match(pattern, string, [flags])

其中,pattern表示匹配的正则表达式;string是要匹配的字符串;flags表示标志位,用于控制正则表达式的匹配方式,如:re.I表示不区分大小写。

例:

import re #导入re模块

print(re.match('www', 'www.python.org/').span()) #span()函数可以获取匹配的位置

print(re.match('org', 'www.python.org'))

输出结果为:

(0, 3) #在位置0到3(不包括3)匹配成功

None #从起始位置未能匹配成功

10、search()方法

search()方法用于在整个字符串中搜索第一个匹配的值,如果匹配成功,则返回Match对象,否则返回None。

语法格式:

re.search(pattern, string, [flags])

其中,pattern表示匹配的正则表达式;string是要匹配的字符串;flags表示标志位,用于控制正则表达式的匹配方式,如:re.I表示不区分大小写。

例如:

>>> re.search(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.')

可以看出,目标字符串“It's easy to use Python, but it's not easy to learn Python.”中一共有两个‘Python’,search()方法可以从字符串的起始位置开始查找到‘Python’,当找到第一个匹配值后就停止查找,返回位置信息。

match()和search()的比较

match()要求目标字符串的起始位置就能匹配,search()对目标字符串全段进行逐次匹配,只要首次匹配成功就停止匹配。

请看下例:

>>> import re

>>> print(re.match(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.'))

输出结果:None

11、findall()方法

findall()方法用于在整个字符串中搜索所有匹配的值,如果匹配成功,则返回以匹配值为元素的列表,否则返回空列表。

语法格式:

re.findall(pattern, string[, flags])

其中,pattern表示匹配的正则表达式;string是要匹配的字符串;flags表示标志位,用于控制正则表达式的匹配方式,如:re.I表示不区分大小写。

例:

>>> import re

>>>print(re.findall(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.'))

输出结果:['Python', 'Python']

可以看出,findall()的结果没有指出匹配的具体位置。

12、正则表达式的应用

字符串替换

这里要用到sub()方法。它的语法格式如下:

re.sub(pattern, repl, string [,count] [,flgs])

其中,pattern是模式字符串;repl是用于替换的字符串;string是原字符串;可选参数count为模式匹配后替换的最大次数,省缺表示替换所有的匹配;可选参数flags的意义与前面的方法的该参数一致。

例:

>>> import re

>>> str1='x=36.567 y=123.234'

>>> str2=re.sub('.d+','',str1) #用空格代替小数点及其后的数字

>>> print(str2)

输出结果:x=36 y=123

分隔字符串

这里要用到split()方法。它的返回值为一个列表,它的语法格式如下:

re.split(pattern, string [,maxsplit] [,flgs])

其中,pattern是模式字符串;string是原字符串;可选参数maxsplit为最大拆分次数,省缺表示拆分所有的匹配;可选参数flags的意义与前面的方法的该参数一致。

例:

>>> import re

>>> str='白日依山尽,黄河入海流。欲穷千里目,更上一层楼!'

>>> re.split(r',|。|!',str) #按照“,”、“。”、“!”分隔字符串。

['白日依山尽', '黄河入海流', '欲穷千里目', '更上一层楼', '']

注意,返回值列表中多出了一个空字符。

Ⅵ 所有python表达式都做什么事

这里的a=1则是一个表达式,它本身并不会产生任何动作,而只是把变量a的值和1进行比较,然后把比较结果交给if语句去处理。 也就是说:语句是可以单独执行的、能够产生实际效果的代码;而表达式则是包含在语句中,根据某种条件计算出一个值或得出某种结果,然后由语句去判断和处理的代码。

阅读全文

与python目标和表达式区别相关的资料

热点内容
python实用小工具 浏览:22
怎么在安卓手机上去除马赛克 浏览:233
农行浓情通app怎么下载 浏览:531
怎么把原文件夹找回来 浏览:535
俄罗斯方块实现python思路 浏览:735
汉语拼音英语编译代码 浏览:501
程序员应具备的能力 浏览:606
手机石墨文档文件夹访问权限 浏览:656
客户端如何登陆域文件服务器 浏览:530
两位数的平方计算法 浏览:930
android图片分块 浏览:715
图形平移命令 浏览:962
聚类算法JAVA代码 浏览:407
网站图标素材压缩包 浏览:892
娱乐化app怎么做 浏览:638
加密货币行业前景如何 浏览:574
arm查询法的局限性和编译流程 浏览:80
醒图的文件夹叫什么 浏览:998
php程序员北京 浏览:179
gcc编译进程数据 浏览:655