【Python】Python基础语法 (建议有C基础)(2)

简介: 【Python】Python基础语法 (建议有C基础)

2、字符串的拼接

在Python中,字符串与字符串之间可以通过+来完成拼接,但是字符串变量无法与非字符串变量进行拼接,因为类型不一致。

name1 = 'hello'
name2 = "world"
print(name1+name2+"!")

3、字符串的格式化

a、利用占位符进行格式化

和C语言一样,Python的字符串格式化,也可以使用占位符的方式进行格式化。

%占位符

多个变量占位,变量要用括号括起来并按照占位的顺序填入

year: int = 99
Type: str = "bool"
description = "C语言在C%d后才支持%s类型" % (year, Type)
print(description)

在格式化的过程中,数字类型要被转成字符串后然后进行拼接。

b、快速格式化

Python支持通过语法:f"内容{变量}"的格式来快速格式化,这种写法不做精度控制也不理会类型,适用于快速格式化字符串

year = 99
type1 = "bool"
# f是format 格式化
print(f"C语言直到C{year},才支持{type1}类型")

c、格式化表达式

在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码。

print("2*4计算结果:%d" % (2 * 4))
print(f"3*4计算结果:{3 * 4}")
print("计算结果类型:%s" % type(3 * 4))

4、格式化的精度控制

在一些特殊场景下面,我们要对数据的精度进行处理,这时就要用到精度处理了,Python的精度处理与C语言是一样的。

Python可以使用辅助符号m.n来控制数据的宽度精度

  • m,控制宽度,要求的是数字,设置的宽度小于数字自身不生效。
  • n,控制小数点精度,要求是数字,会进行小数的四舍五入。(这一点与C语言不同)
num1 = 11
num2 = 11.245
print(num1)
print(num2)
print("数字是11,宽度是5:%5d" % num1)
print("数字是11,245,宽度是7,精度是2:%7.2f" % num2)
print("数字是11,245,宽度是7,精度是3:%7.3f" % num2)

六、运算符

1、算术运算符

注意:

**是求乘方. 不光能算整数次方, 还能算小数次方

# 【运算符】
a = 3 + 2
b = 5 - 2
c = 2.5 * 2
d = 10 / 2
e = 10 // 3
f = 10 % 3
g = 2 ** 2
print(a)
print(b)
print(c)
print(d)
print(e)
print(f)
print(g)
# 【赋值运算符与复合运算符】
num = 1
num += 1
print(num)
num -= 1
print(num)
num *= 2
print(num)
num /= 2
print(num)
num **= 2
print(num)
print("----------------------------------------")
num = 10
num //= 3
print(num)
print("----------------------------------------")
num = 10
num %= 3
print(num)
print("----------------------------------------")

2、关系运算符

<<=>>===!= 这一系列的运算符称为 关系运算符, 它们是在比较操作数之间的关系。

  • 如果关系符合, 则表达式返回 True. 如果关系不符合, 则表达式返回 False
a: int = 10
b: int = 20
print(a > b)
print(a >= b)
print(a < b)
print(a <= b)
print(a == b)
print(a != b)

  • 关系运算符不光针对整数/浮点数进行比较, 还能针对字符串进行比较.(对字符串的比较采用的是,按照ASCII码进行比较)
a: str = "hello"
b: str = "world"
print(a > b)
print(a >= b)
print(a < b)
print(a <= b)
print(a == b)
print(a != b)

1. Python可以直接使用 == 或者 != 即可对字符串内容判定相等. (这一点和 C / Java 不同).
2. 对于浮点数来说, 不要使用 == 判定相等,浮点数在计算机中的表示并不是精确的! 在计算过程中, 就容易出现非常小的误差
print(0.1 + 0.2)
print(0.1 + 0.2 == 0.3)

浮点数正确的比较方式: 不再严格比较相等了, 而是判定差值小于允许的误差范围.

a: float = 0.1
b: float = 0.2
print(-0.00000001 < a + b - 0.3 < 0.00000001)

Python中支持 < x + y < 这种连续判断,C/C++/Java中是不支持的。

3、逻辑运算符

andornot 这一系列的运算符称为 逻辑运算符。

  • and 并且. 两侧操作数均为 True, 最终结果为 True. 否则为 False. (一假则假)
  • or 或者. 两侧操作数均为 False, 最终结果为 False. 否则为 True. (一真则真)
  • not 逻辑取反. 操作数本身为 True, 则返回 False. 本身为 False, 则返回 True.
a: int = 10
b: int = 20
c: int = 30
print(a < b and b < c)
print(a < b or b < c)
print(not a > b)

关于短路求值

和其他编程语言类似, Python 也存在短路求值的规则.

  • 对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.
  • 对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.
print(10 > 20 and 10 / 0 == 1)
print(10 < 20 or 10 / 0 == 1)

4、赋值运算符

赋值运算符,表示赋值. 这个我们已经用过很多次了,不在进行介绍,我们来看看两种特殊情况的赋值。

  • 链式赋值
a = b = 10
print(a)
print(b)

一般不建议使用链式赋值,尽量一行代码就只是包含一个操作!

  • 多元赋值
a, b = 10, 20
print(a)
print(b)

多元赋值还是有一定的意义的,能帮我们解决一些特殊问题,比如完成两个变量的交换。

a, b = 10, 20
print(a, b)
# 交换a, b的值
a, b = b, a
print(a, b)

七、一些补充

1、关于前后置++ 或- -

Python 中不支持++--这样的自增自减操作的!

++a之所以没有语法报错,是 Python解释器把++当成了两个正号,--a也是不会报错,把--当成了两个负号,负负得正,最终的值仍然不变。

但是后置++和后置--都是语法上报错的!

2、关于Python语句结束后要不要加;

在Python中,一个语句写完了之后,可以加上分号,也可以不加。通常情况下都是不加的.如果加了,也不算错。

如果把多个语句写到同一行了,这个时候语句之间,务必要加上分号的.(这种写在一行的写法并不推荐)

相关文章
|
28天前
|
人工智能 Ubuntu IDE
【Python】基础:环境配置与基础语法
本文介绍了Python编程语言及其环境配置方法。Python由Guido van Rossum于1991年创建,以其简洁、易学和强大的功能著称。文章详细讲解了Python的主要特点、Windows和Ubuntu下的安装配置步骤、基础语法、控制流、函数、文件操作、模块使用及面向对象编程等内容,帮助读者快速入门Python编程。
54 4
|
3月前
|
XML 前端开发 数据格式
三分钟搞定 Python XPath 语法
XPath(XML Path Language)是一种用于在 XML 文档中查找信息的语言。它基于树状结构的 XML 文档,可以通过路径表达式来选取节点或节点集。也常常用来解析 HTML。 如果你是一个前端,对用路径获取元素可能陌生又熟悉。陌生是很多的路径,熟悉的路径上又有熟悉的属性和方法。下面我们就来探究一下 XPath 的魅力。
|
7天前
|
机器学习/深度学习 数据挖掘 开发者
Python编程入门:理解基础语法与编写第一个程序
【10月更文挑战第37天】本文旨在为初学者提供Python编程的初步了解,通过简明的语言和直观的例子,引导读者掌握Python的基础语法,并完成一个简单的程序。我们将从变量、数据类型到控制结构,逐步展开讲解,确保即使是编程新手也能轻松跟上。文章末尾附有完整代码示例,供读者参考和实践。
|
18天前
|
存储 Python Perl
python正则语法
本文介绍了正则表达式的基础知识及其在 Python 中的应用。首先解释了为什么要使用正则表达式,通过一个判断手机号的示例展示了正则表达式的简洁性。接着详细介绍了 `re` 模块的常用方法,如 `match()`、`search()`、`findall()`、`finditer()` 等,并讲解了正则表达式的基本语法,包括匹配单个字符、数字、锚字符和限定符等。最后,文章还探讨了正则表达式的高级特性,如分组、编译和贪婪与非贪婪模式。
16 2
|
24天前
|
存储 程序员 开发者
Python编程入门:从零开始掌握基础语法
【10月更文挑战第21天】本文将带你走进Python的世界,通过浅显易懂的语言和实例,让你快速了解并掌握Python的基础语法。无论你是编程新手还是想学习一门新的编程语言,这篇文章都将是你的不二之选。我们将一起探索变量、数据类型、运算符、控制结构、函数等基本概念,并通过实际代码示例加深理解。准备好了吗?让我们开始吧!
|
1月前
|
存储 C语言 索引
Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法
本文全面介绍了Python的基础知识,包括Python的诞生背景、为什么学习Python、Python的应用场景、Python环境的安装、Python的基础语法、数据类型、控制流、函数以及数据容器的使用方法,旨在为Python零基础读者提供一篇全面掌握Python语法的博客。
42 0
Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法
|
1月前
|
存储 数据可视化 数据处理
【Python篇】快速理解Python语法:全面指南
【Python篇】快速理解Python语法:全面指南
46 1
|
2月前
|
Java Linux C++
30天拿下Python之基础语法
30天拿下Python之基础语法
29 4
|
2月前
|
IDE Java 开发工具
Python的语法
Python的语法。
36 5
|
2月前
|
存储 数据挖掘 程序员
揭秘Python:掌握这些基本语法和数据类型,你将拥有编程世界的钥匙!
【9月更文挑战第3天】Python 是一种简洁强大的高级编程语言,其清晰的语法和丰富的功能深受程序员喜爱。本文从基本语法入手,介绍 Python 的代码结构特点,如通过缩进区分代码块,使逻辑更清晰。接着详细讲解主要数据类型:数值型、字符串、列表、元组、集合与字典,每个类型均附有示例代码,帮助初学者快速掌握 Python,为后续学习打下坚实基础。
46 2