当前位置: 首页 > news >正文

03. 运算符

一、运算符与表达式

  运算符 就是对字面量或者变量进行操作的符号;表达式 是指用运算符把字面量或者变量连接起来,符合 Python 语法的式子。不同运算符连接的表达式体现的是不同类型的表达式;Python 中的运算符主要包括 算术运算符赋值运算符比较(关系)运算符逻辑运算符位运算符

二、算数运算符

  算术运算符是用来处理四则运算的符号。

算数运算符运算范例结果
+5 + 27
-5 - 23
*5 * 210
/5 / 22.5
%取模(取余)5  % 21
//取整除,返回商的整数部分5 // 22
**幂,即返回 x 的 n 次方5**225,即 $ 5^{2}$
a = 5
b = 2
print(a, "+", b, "=", (a + b))      # 5 + 2 = 7
print(a, "+", b, "=", (a - b))      # 5 - 2 = 3
print(a, "+", b, "=", (a * b))      # 5 * 2 = 10
print(a, "+", b, "=", (a / b))      # 5 / 2 = 2.5
print(a, "+", b, "=", (a % b))      # 5 /% 2 = 1
print(a, "+", b, "=", (a // b))     # 5 // 2 = 2
print(a, "+", b, "=", (a ** b))     # 5 ** 2 = 25a = "hello"
b = "world"
print(a, b, "=", (a + b))           # hello + world = helloworld

在代码中,如果有小数参与运算,其结果可能是不精确的;

% 取模运算结果的正负与被模数一致,即:a%b 等价于 a-a/b*b,取模结果的正负与 a 的正负一致;

字符串之间也可以进行加法运算。如果将两个字符串相加,则会自动将两个字符串拼接为一个字符串;

如果将字符串和数字相乘,则会对字符串进行复制操作,即把字符串重复指定的次数并返回,例如:“字符串”*m,表示将字符串复制 m 次;

使用除法运算符(/ 或 //)和取余运算符时,除数不能为 0,否则会报以下异常:ZeroDivisionError: division by zero

三、赋值运算符

  赋值运算符 用于将右侧表达式的值赋值给左侧变量。

赋值运算符运算范例结果
=赋值a = 10将 10 赋值给变量a
+=加后赋值a += b将 a + b 的值给 a
-=减后赋值a -= b将 a - b 的值给 a
*=乘后赋值a *= b将 a * b 的值给 a
**=幂运算后赋值a **= b a b a^b ab 的值给 a
/=除后赋值a /= b将 a / b 的值给 a
//=整除后赋值a //= b将 a//b 的值给 a
%=取余后赋值a %= b将 a % b 的值给 a
# 多个变量赋值时使用逗号分隔
a,b = 10,5a += b
print("a = ",a)         # 15
print("b = ",b)         # 5
print()a = 10
b = 5a -= b
print("a = ",a)         # 5
print("b = ",b)         # 5
print()a = 10
b = 5a *= b
print("a = ",a)         # 50
print("b = ",b)         # 5
print()a = 10
b = 5a **= b
print("a = ",a)         # 100000
print("b = ",b)         # 5
print()a = 10
b = 5a /= b
print("a = ",a)         # 2.0
print("b = ",b)         # 5
print()a = 10
b = 5a //= b
print("a = ",a)         # 2
print("b = ",b)         # 5
print()a = 10
b = 5a %= b
print("a = ",a)         # 0
print("b = ",b)         # 5

四、关系运算符

  关系运算符 也被称为 比较运算符;它用于表达式的 比较,并返回一个 真值假值

关系运算符运算范例结果
==比较两个对象的值是否相等4 == 3False
!=比较两个对象的值是否不相等4 != 3True
<比较左侧值是否小于右侧值4 < 3False
>比较左侧值是否大于右侧值4 > 3True
<=比较左侧值是否小于等于右侧的值4 <= 3True
>=比较左侧值是否大于等于右侧的值4 >= 3True
a = 4
b = 3print(a, " == ", b, ": ", (a == b))     # False
print(a, " != ", b, ": ", (a != b))     # True
print(a, " <  ", b, ": ", (a < b))      # False
print(a, " <= ", b, ": ", (a <= b))     # False
print(a, " >  ", b, ": ", (a > b))      # True
print(a, " >= ", b, ": ", (a >= b))     # Truea = "1"
b = "2"
print(a, " < ", b, ": ", (a < b))       # True  a = "abc"
b = "ab"
print(a, " > ", b, ": ", (a > b))       # Truea = 1
b = True
print(a, " == ", b, ": ", (a == b))     # True

  在 Python 中,关系运算符可以连的使用。

result = 1 < 2 < 3	# 相当于 1 < 2 and 2 < 3
print(result)result = 10 < 20 > 15   # 相当于 10 < 20 and 20 > 15
print(result)

在 Python 中可以对字符串进行大于(等于)或小于(等于)的运算,当对字符串进行比较时,实际上比较的是字符串的 Unicode 编码,比较两个字符串的 Unicode 编码时,是逐位比较的;

如果不希望比较两个字符串的 Unicode 编码,则需要将其转换为数字然后进行再进行比较;

相等和不等比较的是对象的值,而不是 id

五、逻辑运算符

  逻辑运算符 用于根据表达式的值返回 真值假值。对于非布尔值进行逻辑运算,会将数据转换为布尔值,然后再进行逻辑运算。

  在 Python 中,所有的对象都可以进行真值测试,其中只有下面列出的几种情况得到的值为假。

  • False 或 None
  • 数值中的零,包括 0、0.0、虚数0
  • 空序列,包括 字符串、空元组、空列表、空字典
  • 自定义对象的实例,该对象的 __bool__ 方法返回 False 或者 __len__ 方法返回 0
逻辑运算符功能
and逻辑与,全真为真,有假为假
or逻辑或,有真为真,全假为假
not逻辑非,非假为真,非真为假

  运算结果:

aba and ba or bnot a
TrueTrueTrueTrueFalse
TrueFalseFalseTrueFalse
FlaseTrueFalseTrueTrue
FalseFalseFalseFalseTrue
a = True
b = True
c = False
d = Falseprint(a, " and ", b, ": ", (a and b))   # True
print(a, " and ", c, ": ", (a and c))   # False
print(c, " and ", d, ": ", (c and d))   # False
print()print(a, " or ", b, ": ", (a or b))     # True
print(a, " or ", c, ": ", (a or c))     # True
print(c, " or ", d, ": ", (c or d))     # False
print()print("not ", a, ": ", (not a))         # False
print("not ", c, ": ", (not c))         # True
print()# 对于非布尔值进行逻辑运算,会先将数据转化为布尔值,然后再进行逻辑运算
a = 1
print("not ", a, ": ", (not a))         # False

  在 Python 中 与运算 和 或运算 都具有短路效果,即当左边的表达式能确定最终结果时,那么右边就不会参与运算了;

  • 与运算符;与运算是找 False的,如果第一个值为 False,则不再看第二个值。
  • 或运算符:或运算是找 True 的,如果第一个值为 True,则不再看第二个值。
print("与运算的短路运算")
True and print("我执行了")
False and print("我不会执行")
print()print("或运算的短路运算")
True or print("我不会执行")
False or print("我执行了")

  当我们对非布尔值进行与或运算时,Python 会将其当作布尔值运算,最终会返回原值。与运算是找 False 的,如果第一个值是 False,则直接返回第一个值,否则返回第二个值。或运算是找 True 的,如果第一个值是 True,则直接返回第一个值,否则返回第二个值。

print("非布尔值的与运算")
# Ture and True
print("1 and 2: ", (1 and 2))        # 2
# True and False
print("1 and 0: ", (1 and 0))        # 0
# False and True
print("0 and 1: ", (0 and 1))        # 0
# False and False
print("0 and None: ", (0 and None))  # 0
print()print("非布尔值的或运算")
# Ture or True
print("1 or 2: ", (1 or 2))        # 1
# True or False
print("1 or 0: ", (1 or 0))        # 1
# False or True
print("0 or 1: ", (0 or 1))        # 1
# False or False
print("0 or None: ", (0 or None))  # None

六、身份运算符

身份运算符功能
is判断两个表示是否引用同一个对象,若引用的是同一个对象则返回 True,否则返回 False
is not判断两个表示是否引用同一个对象,若引用的不是同一个对象则返回 True,否则返回 False
a = 123
b = 123
c = -123
d = -123print("id(a): ",id(a))
print("id(b): ",id(b))
print("id(c): ",id(c))
print("id(d): ",id(d))
print(f"a = {a},b = {b},c = {c},d = {d}")
print()print("a is b: ", (a is b))             # True
print("a is c: ", (a is c))             # False
print()print("a is not b: ", (a is not b))     # False
print("a is not c: ", (a is not c))     # True
print()print("a is b: ",(a is b))
print("c is d: ",(c is d))

在 Python 解释器启动的那一刻开始,就会在内存中实现申请好一系列内存空间存放好常用的整数,范围为 [-5,256]。

如果用 Pycharm 等 IDE,会自动优化;

七、成员运算符

成员运算符功能
in在指定序列中找到值时返回 True,否则返回 False
not in在指定序列中没有找到值时返回 True,否则返回 False
a = "s"
b = "a"
c = "Sakura"print("a = ", a,", b  = ", b,", c = ", c)
print()print("a in c: ", (a in c))                 # False
print("a not in c: ", (a not in c))         # True
print()print("b in c: ", (b in c))                 # True
print("b not in c: ", (b not in c))         # False

八、位运算符

  位运算符是直接对整数的二进制进行的运算; 所有数字在计算机底层都以二进制形式执行;所有的整数值底层都以补码的方式存储;

  • 正数:三码合一,符号位为 0;
  • 负数:符号位为 1
    • 原码:直接将数值转成二进制数,最高位是符号位;
    • 反码:对原码按位取反,符号位不变;
    • 补码:其反码加 1;
位运算符运算范例
<<左移,空位补0,被移除的高位舍弃3 << 2 = 12
>>右移,空位使用符号位填充,被移除的低位舍弃3 >> 1 = 1
&与运算,二进制位进行与运算,全1为1,有0为06 & 3 = 2
|或运算,二进制位进行或运算,有1为1,全0为06| 3 = 7
^异或运算,二进制位进行异或运算,相同为0,不同为16 ^ 3 = 5
~按位取反,二进制位进行取反运算,非0为1,非1为0~6 = -7
print("3 << 2: ", (3 << 2))        # 12
print("3 >> 1: ", (3 >> 1))        # 1
print("-3 >> 1: ", (-3 >> 1))      # -2
print("6 & 3: ", (6 & 3))          # 2
print("6 | 3: ", (6 | 3))          # 7
print("6 ^ 3: ", (6 ^ 3))          # 5
print("~6: ", (~6))                # -7

<<:在一定范围内,每向左移一位,相当于乘以2;

>>:在一定范围内,每向右移一位,相当于除以2;

九、三元运算符

  三元运算符的格式如下:

语句1 if 条件表达式 else 语句2

  它的执行流程如下:

  • 条件运算符在执行时,会先对条件表达式进行求值判断
    • 如果判断结果为 True,则执行语句1,并返回执行结果
    • 如果判断结果为 False,则执行语句2,并返回执行结果
num = int(input("请输入一个数:"))
print("你输入的数比10大") if num > 10 else print("你输入的数不大于10")a = 10
b = 20max = a if a > b else b
print(max)

三元运算符一定可以改成 if-else 语句,反之不成立;

如果程序既可以使用三元运算符又可以使用 if-else 语句,优先使用三元运算符;

十、运算符的优先级

  我们可以使用小括号来提升运算符的优先级

优先级运算符名称或含义使用形式结合方向说明
1(expressions...)圆括号(表达式)左到右
[expressions...]列表[表达式]左到右
{key:value}字典{键:值}左到右
{expressions...}集合{表达式}左到右
2[index]索引[常量]左到右
[start:end:step]切片[起始索引:结束索引:步长]左到右
x(arguments...)方法调用方法名(形参列表)左到右
x.attribute属性访问对象.属性左到右
3**乘方表达式**表达式左到右
4+正号运算符+表达式右到左单目运算符
-负号运算符-表达式单目运算符
~按位取反~表达式左到右
5*表达式 * 表达式左到右双目运算符
/表达式 / 表达式双目运算符
//整除表达式 // 表达式双目运算符
%取余表达式 % 表达式双目运算符
6+表达式 + 表达式左到右双目运算符
-表达式 - 表达式双目运算符
7<<左移变量 << 表达式左到右双目运算符
>>右移变量 >> 表达式双目运算符
8&按位与表达式 & 表达式左到右双目运算符
9^按位异或表达式 ^ 表达式左到右双目运算符
10|按位或表达式 | 表达式左到右双目运算符
11>大于表达式 > 表达式左到右双目运算符
>=大于等于表达式 >= 表达式双目运算符
<小于表达式 < 表达式双目运算符
<=小于等于表达式 <= 表达式双目运算符
==等于表达式 == 表达式双目运算符
!=不等于表达式 != 表达式双目运算符
isis 运算符变量 is 变量左到右双目运算符
is notis not 运算符变量 is not 变量双目运算符
inin 运算符元素 in 序列左到右双目运算符
not innot in 运算符元素 not in 序列双目运算符
12not逻辑非not 表达式左到右单目运算符
13and逻辑与表达式 and 表达式左到右单目运算符
14or逻辑与表达式 and 表达式左到右单目运算符
15if-else三元表达式语句1 if 条件表达式 else 语句2
16=赋值运算符变量=表达式右到左
/=除后赋值变量/=表达式
*=乘后赋值变量*=表达式
%=取模后赋值变量%=表达式
+=加后赋值变量+=表达式
-=减后赋值变量-=表达式
<<=左移后赋值变量<<=表达式
>>=右移后赋值变量>>=表达式
&=按位与后赋值变量&=表达式
^=按位异或后赋值变量^=表达式
|=按位或后赋值变量|=表达式

相关文章:

03. 运算符

一、运算符与表达式 运算符 就是对字面量或者变量进行操作的符号&#xff1b;表达式 是指用运算符把字面量或者变量连接起来&#xff0c;符合 Python 语法的式子。不同运算符连接的表达式体现的是不同类型的表达式&#xff1b;Python 中的运算符主要包括 算术运算符、赋值运算符…...

【最优清零方案——贪心+滑动窗口+线段树】

题目 代码 #include <bits/stdc.h> using namespace std; using ll long long; const int N 1e6 10; int a[N]; struct node {int l, r;int m, p, lazy; } tr[4 * N]; void pushup(node &u, node &l, node &r) {if (l.m r.m){u.m l.m;u.p max(l.p, r.…...

一个点绕任意点旋转后的点的坐标

在平面坐标上&#xff0c;任意点P(x1,y1)&#xff0c;绕一个坐标点Q(x2,y2)逆时针旋转θ角度后,新的坐标设为(x, y)的计算公式&#xff1a; x (x1 - x2)*cos(θ) - (y1 - y2)*sin(θ) x2 ; y (x1 - x2)*sin(θ) (y1 - y2)*cos(θ) y2 ; 另一个场景应用&#xff0c;坐标轴绕…...

大数据面试题每日练习--HDFS是如何工作的?

HDFS&#xff08;Hadoop Distributed File System&#xff09;是一个分布式文件系统&#xff0c;设计用于存储非常大的文件。它的主要工作原理如下&#xff1a; NameNode&#xff1a;管理文件系统的命名空间&#xff0c;维护文件目录树和文件元数据信息。NameNode记录每个文件…...

Python的3D可视化库 - vedo (2)visual子模块 基本可视化行为

文章目录 1. visual模块的继承关系2. 基类CommonVisual的方法2.1 获取对象信息2.1.1 对象本身信息2.1.2 对象的查找表2.1.3 对象标量范围2.1.4 对象缩略图 2.2 呈现对象2.2.1 在窗口显示1.2.2 对象可见性 2.2.3 对象颜色2.2.4 对象透明度 2.3 添加标度条2.3.1 2D标度条2.3.2 3D…...

Java AIO(NIO.2)

Java AIO&#xff08;Asynchronous I/O&#xff0c;异步I/O&#xff09;&#xff0c;也被称为NIO.2&#xff0c;是Java平台提供的一种处理异步输入/输出操作的机制。作为Java NIO&#xff08;New I/O&#xff09;的扩展&#xff0c;AIO引入了一些新的API和特性&#xff0c;旨在…...

Flink 常用问题及常用配置(有用)

一、Flink 常用问题及常用配置 参数 示例 说明 execution.checkpointing.interval 3min Checkpoint 触发间隔 state.backend rocksdb / filesystem 用于设置statebackend类型, 默认会以内存为statebackend(无法支持大状态) taskmanager.memory.jvm-overhead.max 204…...

RocketMQ: 消息过滤,通信组件,服务发现

消息过滤 1 ) 简单消息过滤 /*** 订阅指定topic下tags分别等于 TagA 或 TagC 或 TagD */consumer.subscribe("TopicTest1", "TagA || TagC || TagD");如以上代码所示&#xff0c;简单消息过滤通过指定多个 Tag 来过滤消息&#xff0c;过滤的动作在服务器进…...

linux ubuntu的脚本知

目录 一、变量的引用 二、判断指定的文件是否存在 三、判断目录是否存在 四、判断最近一次命令执行是否成功 五、一些比较符号 六、"文件"的读取和写入 七、echo打印输出 八、ubuntu切换到root用户 N、其它可以参考的网址 脚本功能强大&#xff0c;用起来也…...

HTTP有哪些风险?是怎么解决的?

一、风险 HTTP是通过明文传输的&#xff0c;存在窃听风险、篡改风险以及冒充风险。 二、如何解决 HTTPS在HTTP的下层加了一个SSL/TLS层&#xff0c;保证了安全&#xff0c;通过混合加密解决窃听风险、数字签名解决篡改风险、数字证书解决冒充风险。 &#xff08;1&#xff0…...

3.12MayBeSomeLinearAlgebra

X是M*(D1),XT为&#xff08;D1)*M Ω是一行D1列&#xff0c;X乘以欧米噶是M行D1列 行是说样本个数&#xff0c;列是特征数量 如果是小样本&#xff0c;那么可能会出现特征数量大于样本个数 如果MD*DM就是M*M&#xff0c;...

学习日志015--python单链表

创建 class Node:def __init__(self,data):# 数据域self.data data# 链接域self.next Noneclass LinkList:def __init__(self,):# 初始化头节点self.head None# 记录链表的长度self.size 0 增加 #头插def insert_head(self,value):# 创建新节点node Node(value)q self…...

如何在Windows右键新建菜单中添加自定义项

Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\.py] "Python.File"[HKEY_CLASSES_ROOT\.py\ShellNew] "NullFile"""[HKEY_CLASSES_ROOT\Python.File] "FriendlyTypeName""文本.py"[HKEY_CLASSES_ROOT\Python.Fil…...

Spring Boot 3.0废弃了JavaEE,改用了Jakarta EE

Spring Boot 3.0废弃了JavaEE&#xff0c;改用了Jakarta EE 历史背景 javax变成Jakarta的主要原因是因为Java EE项目从Oracle转移到了Eclipse Foundation&#xff0c;并改名为Jakarta EE。 JavaEE是从Java 1.2版本开始推出的Java企业级开发平台&#xff0c;最初的名称是J2EE(J…...

pdf文档动态插入文字水印,45度角,旋转倾斜,位于文档中央,多行水印可插入中文

一行水印 /*** param inputFile 你的PDF文件地址* param outputFile 添加水印后生成PDF存放的地址* param waterMarkName 你的水印* return*/public static boolean waterMark(String inputFile,String outputFile, String waterMarkName){try {PdfReader reader new PdfRead…...

[ 渗透测试面试篇-2 ] 针对大规模资产的攻击思路

&#x1f36c; 博主介绍 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 _PowerShell &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 &#x1f389;点赞➕评论➕收藏 养成习…...

深入解析 Web 应用中的 CHIPS(Partitioned Cookie Attribute)

深入解析 Web 应用中的 CHIPS&#xff08;Partitioned Cookie Attribute&#xff09; 最新发现flask3.1.0 的版本引入了新的特性&#xff1a;对CHIPS的支持。不少同学对这个可能有点陌生&#xff0c;本文带大家了解一下。 为了在隐私保护和功能需求之间取得平衡&#xff0c;Goo…...

从搭建uni-app+vue3工程开始

技术栈 uni-app、vue3、typescript、vite、sass、uview-plus、pinia 一、项目搭建 1、创建以 typescript 开发的工程 npx degit dcloudio/uni-preset-vue#vite-ts my-vue3-project2、安装sass npm install -D sass// 安装sass-loader&#xff0c;注意需要版本10&#xff0c;…...

归并排序与逆序对问题(C语言版)

一、引言 归并排序是一种高效且稳定的排序方法&#xff0c;而逆序对问题是算法领域的一个经典问题&#xff0c;本文教大家如何实现归并排序&#xff0c;以及如何使用归并排序去结果逆序对问题 二、归并排序 归并排序思想 分解&#xff1a;将待排序的数组分成两半&#xff0c…...

网络爬虫总结与未来方向

通过深入学习和实际操作&#xff0c;网络爬虫技术从基础到进阶得以系统掌握。本节将全面总结关键内容&#xff0c;并结合前沿技术趋势与最新资料&#xff0c;为开发者提供实用性强的深度思考和方案建议。 1. 网络爬虫技术发展趋势 1.1 趋势一&#xff1a;高性能分布式爬虫 随…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

微信小程序 - 手机震动

一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注&#xff1a;文档 https://developers.weixin.qq…...

Linux nano命令的基本使用

参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时&#xff0c;显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

基于鸿蒙(HarmonyOS5)的打车小程序

1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...

快速排序算法改进:随机快排-荷兰国旗划分详解

随机快速排序-荷兰国旗划分算法详解 一、基础知识回顾1.1 快速排序简介1.2 荷兰国旗问题 二、随机快排 - 荷兰国旗划分原理2.1 随机化枢轴选择2.2 荷兰国旗划分过程2.3 结合随机快排与荷兰国旗划分 三、代码实现3.1 Python实现3.2 Java实现3.3 C实现 四、性能分析4.1 时间复杂度…...

机器学习的数学基础:线性模型

线性模型 线性模型的基本形式为&#xff1a; f ( x ) ω T x b f\left(\boldsymbol{x}\right)\boldsymbol{\omega}^\text{T}\boldsymbol{x}b f(x)ωTxb 回归问题 利用最小二乘法&#xff0c;得到 ω \boldsymbol{\omega} ω和 b b b的参数估计$ \boldsymbol{\hat{\omega}}…...

用递归算法解锁「子集」问题 —— LeetCode 78题解析

文章目录 一、题目介绍二、递归思路详解&#xff1a;从决策树开始理解三、解法一&#xff1a;二叉决策树 DFS四、解法二&#xff1a;组合式回溯写法&#xff08;推荐&#xff09;五、解法对比 递归算法是编程中一种非常强大且常见的思想&#xff0c;它能够优雅地解决很多复杂的…...

node.js的初步学习

那什么是node.js呢&#xff1f; 和JavaScript又是什么关系呢&#xff1f; node.js 提供了 JavaScript的运行环境。当JavaScript作为后端开发语言来说&#xff0c; 需要在node.js的环境上进行当JavaScript作为前端开发语言来说&#xff0c;需要在浏览器的环境上进行 Node.js 可…...

js 设置3秒后执行

如何在JavaScript中延迟3秒执行操作 在JavaScript中&#xff0c;要设置一个操作在指定延迟后&#xff08;例如3秒&#xff09;执行&#xff0c;可以使用 setTimeout 函数。setTimeout 是JavaScript的核心计时器方法&#xff0c;它接受两个参数&#xff1a; 要执行的函数&…...