【Python】系列之变量和运算符

            感谢点赞和关注 ,每天进步一点点!加油!

目录

一、变量

1.1 什么是变量

1.2 变量的特点

1.3 作用域

1.4 变量的命名规则

1.5 变量的定义和使用

1. 变量的定义

2. 两个变量值的交换

1.6 基本数据类型分类

1.7 数据类型转换

1.8 Python是解释型的强类型动态语言

1.8.1 解释型

1.8.2 强类型

1.8.2 动态语言

二、运算符

2.1 算术运算符(常用)

2.2 赋值运算符(常用)

2.3 比较运算符(常用)

2.4 逻辑运算符(常用)

2.5 成员运算符(比较常用)

2.6 身份运算符(拓展)

2.7 位运算符 (拓展)

2.8 运算符的优先级


一、变量


1.1 什么是变量


一栋楼房,用来容纳人和物。我们可以说去302房间找某人或去303房间找某物。

在这里你可以把楼房理解成内存,302房间或303房间理解为变量名,某人或某物理解成变量的值。

变量:在内存中开辟一块空间,临时保存数据。通俗的说变量名就是存储空间的名字,通过这个名字来访问和存储空间中的数据。

1.2 变量的特点


  • 可以反复存储数据
  • 可以反复取出数据
  • 可以反复更改数据

1.3 作用域


变量的作用域由声明它的位置决定。如果在过程中声明变量,则只有该过程中的代码可以访问或更改变量值,此时变量具有局部作用域并被称为过程级变量。如果在过程之外声明变量,则该变量可以被Script中所有过程所识别,称为Script级变量,具有Script级作用域。

1.4 变量的命名规则


  • 变量名只能是字母数字下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 变量名要有见名知义的效果
    • 驼峰命名法
    • 小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
    • 大驼峰式命名法(upper camel case): 每一个单词的首字母都采用大写字母,例如:FirstName、LastName
    • 还有一种命名法是用下划线“_”来连接所有的单词,比如user_name
  • 变量名区分大小写
  • 以下关键字不能声明为变量名(关键字是python内部使用或有特殊含义的字符)['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

1.5 变量的定义和使用


1. 变量的定义

在python中,每一个变量在使用前都必须赋值,变量赋值后,变量就创建成功了。

变量名 = 值

示例:

示例:

Scala 语法变量的hashCode对比

示例:

2. 两个变量值的交换

其它语言中可以借助于第三个变量来交换变量 a 和b 的值

python中可以直接交换,两个变量的值

1.6 基本数据类型分类


数字

    • int 整型(1, 2, -1, -2)
    • float 浮点型(34.678)
    • bool 布尔型(True/False)
    • complex 复数(4+3J, 不应用于常规编程,这种仅了解一下就好

字符串

    • str 单引号,双引号和三引号内表示的内容为字符串 “hello world"

列表

    • list 使用中括号表示 [1, 2, 3, 4]

元组

    • tuple 使用小括号表示 (1, 2, 3, 4)

字典

    • dict 使用大括号表示,存放key-value键值对 {"a":1, "b":2, "c":3}

集合

    • set 也使用大括号表示,但与字典有所不同 {1, 2, 3, 4}

1.7 数据类型转换

示例:

age = 29
print(type(age))

name = "kangll"
print(type(name))

# str+int,字符串拼接报错;age=str(25),这一句就可以成功
print(name, "your " +  str(age) + " age." )

1.8 Python是解释型的强类型动态语言


1.8.1 解释型

  • 优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。
  • 缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。

1.8.2 强类型

强制数据类型定义的语言,也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。

1.8.2 动态语言

运行时才进行数据类型检查 即在变量赋值时,才确定变量的数据类型,不用事先给变量指定数据类型 。也就是说,在用动态类型的语言编程时,永远也不会给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如shell 也多少属于动态类型语言。

例如

  • Python是动态语言,是强类型定义语言(类型安全的语言);
  • Shell是动态语言,是弱类型定义语言(类型不安全的语言);
  • JAVA是静态语言,是强类型定义语言(类型安全的语言)。

总结:Python是一门解释型的强类型动态语言。


二、运算符


常用的基本跟 Java是一样的, Python语言支持以下类型的运算符:

2.1 算术运算符(常用)


算术运算符

描述

实例

+

加法

1+2=3

-

减法

5-1=4

*

乘法

3*5=15

/

除法

10/2=5

//

整除

10//3=3 不能整除的只保留整数部分

**

求幂

2**3=8

%

取余(取模)

10%3=1 得到除法的余数

2.2 赋值运算符(常用)


赋值运算符

描述

实例

=

简单的赋值运算符,下面的全部为复合运算符

c =a + b 将a + b的运算结果赋值给c

+=

加法赋值运算符

a += b 等同于 a = a + b

-=

减法赋值运算符

a -= b 等同于 a = a - b

*=

乘法赋值运算符

a *= b 等同于 a = a * b

/=

除法赋值运算符

a /= b 等同于 a = a / b

//=

整除赋值运算符

a //= b 等同于 a = a // b

**=

求幂赋值运算符

a ** = b 等同于 a = a ** b

%=

取余(取模)赋值运算符

a %= b 等同于 a = a % b

2.3 比较运算符(常用)


比较运算符

描述

实例

==

等于(注意与=赋值运算符区分开),类似shell里的-eq

print(1==1) 返回True

!=

不等于,类似shell里的-ne

print(2!=1) 返回True

<>

不等于(同 != )

print(2<>1) 返回True

>

大于, 类似shell里的-gt

print(2>1) 返回True

<

小于, 类似shell里的-lt

print(2<1) 返回False

>=

大于等于 类似shell里的-ge

print(2>=1) 返回True

<=

小于等于 类似shell里的-le

print(2<=1) 返回False

2.4 逻辑运算符(常用)


逻辑运算符

逻辑表达式

描述

and

x and y

x与y都为True,则返回True;x与y任一个或两个都为False,则返回False

or

x or y

x与y任一个条件为True,则返回True

not

not x

x为True,返回False; x为False,返回True

2.5 成员运算符(比较常用)


成员运算符

描述

in

x 在 y 序列中 , 如果 x 在 y 序列中返回 True; 反之,返回False

not in

x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True; 反之,返回False

在SQL语句里也有in和not in运算符;如

2.6 身份运算符(拓展)


身份运算符

描述

实例

is

is 是判断两个标识符是不是引用自一个对象

x is y, 类似 id(x) == id(y) , 如果是同一个对象则返回 True,否则返回 False

is not

is not 是判断两个标识符是不是引用自不同对象

x is not y ,类似 id(a) != id(b)。如果不是同一个对象则返回结果 True,否则返回 False。

2.7 位运算符 (拓展)


位运算符

说明

&

对应二进制位两个都为1,结果为1

|

对应二进制位两个有一个1, 结果为1, 两个都为0才为0

^

对应二进制位两个不一样才为1,否则为0

>>

去除二进制位最右边的位,正数上面补0, 负数上面补1

<<

去除二进制位最左边的位,右边补0

~

二进制位,原为1的变成0, 原为0变成1

2.8 运算符的优先级


常用的运算符中: 算术 > 比较 > 逻辑 > 赋值

示例:


# 变量定义
a = 20
b = 30

# 判断
if a < b and a != 10:
  print("hive")
  a += b
  print("a :" , a)
else:
  print("hadoop")

# 运算
print(a + b)
print(a * b)

执行结果:

参考:

Python 运算符 | 菜鸟教程

原文链接:python是解释型的强类型动态语言_淘小欣的博客-CSDN博客


                                      感谢点赞和关注!

 

 

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿龙先生啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值