本篇文章主要内容:变量、注释、运算符、关键字、数据类型

在入手变量之前我们先来看看经典的编程语句 → hello world

在python3中输出到控制台的函数是print()

print("hello world")

一、变量

1.1 语法

变量名 = 变量值

注:每一个变量在使用之前都必须赋值

1.2 示例

 a = 20
b = "可乐"

1.3 本质

在 a = 20 中,python解释器一共进行了两步操作:

① 在内存中开辟一片内存地址用来存放数据 20;

② 在内存中创建一个一个变量名为a的对象,并把它指向了数据 20。

如图:

  • 在python中变量是内存地址的别名,也就是说a就代表了0x1002,python没有指针;
  • 变量a所标示的内存空间存储数据20所在内存地址的过程称为引用

二、注释

2.1 语法

单行注释:以 # 开头

多行注释:用三个单引号 ''' 或者三个双引号 """ 将注释括起来

注:python解释器不会执行被注释的代码块

2.2 示例

 # 这是一个单行注释
'''
这是用三个单引号的多行注释
这是用三个单引号的多行注释
这是用三个单引号的多行注释
'''
"""
这是用三个双引号的多行注释
这是用三个双引号的多行注释
这是用三个双引号的多行注释
"""

三、运算符

运算符包括以下内容:

  • 算数运算符
  • 比较运算符
  • 赋值运算符
  • 逻辑运算符
  • 身份运算符
  • 成员运算符

3.1 算数运算符

前提:a = 20 ; b = 10

运算符 描述 示例
+ 加法 a+b 输出 30
- 减法 a-b 输出 10
* 乘法 a*b 输出 200
/ 除法 a/b 输出 2
% 取模(返回除法的余数) a%b 输出 0
** ​a**b 输出 20的10次方
// ​取整(向下取整) a//b 输出 2

3.2 比较运算符

前提:a = 20 ; b = 10

运算符 描述 示例
== 等于(比较两个数是否相等) a==b 输出 False
!= 不等于(比较两个数是否不等) a!=b 输出 True
> 大于 a>b 输出 True
< 小于 a<b 输出 False
>= 大于等于 a>=b 输出 False
<= 小于等于 a<=b 输出 False

3.3 赋值运算符

前提:a = 20 ; b = 10

运算符 描述 示例
= 赋值 a=b 将b赋值给a
+= 加等于 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

3.4 逻辑运算符

前提:a = True ; b = False

运算符 描述 示例
and 两者都为true,才是True a and b 输出 False
or 两者其中一个为True,就是True a or b 输出 True
not 值的反义 not a 输出 False

3.5 身份运算符

前提:a = True ; b = False

运算符 描述 示例
is 判断两者的内存地址是否一样 a is b 输出 False
is not 判断两者的内存地址是否不一样 a is not b 输出 True

3.6 成员运算符

前提:a = "可" ; b = "可乐"

运算符 描述 示例
in 判断值是否在序列中 a in b 输出 True
not in 判断值是否不在序列中 a not in b 输出 False

3.7 运算符优先级

从高到低

运算符 描述
** 指数 (最高优先级)
* / % // 乘,除,取模和取整除
+ - 加法减法
<= < > >= 比较运算符
== != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not and or 逻辑运算符

四、关键字

关键字指的是被python内置默认的一些变量名,由于他有特殊的含义,所以我们在定义变量的时候,不能使用关键字作为变量名,python中一共33个关键字,后面绝大部分都会用到。

and as assert break class
continue def del elif else
except finally for from False
global if import in is
lambda nonlocal not None or
pass raise return try True
while with yield

五、数据类型

通过type()函数来知晓数据的类型,或者通过isinstance()来判断数据的类型。

5.1 字符串(String)

​5.1.1 语法

用单引号或双引号或多引号括起来。

​5.1.2 示例

a = '可乐'
b = "可乐"
c = """可乐"""

5.2 数字型(Number)

整型浮点型都是属于数字型。

​5.2.1 语法

① 整型:a = 10

② 浮点型:b = 1.1

​5.2.2 示例

a = 10  --> 整型
b = 1.1 --> 浮点型
print(type(a)) --> True
print(type(b)) --> False

5.3 布尔型(Bool)

Bool型其实也是数字型的一种,在这里可乐单独拿出来。

​5.3.1 语法

Bool型有两个关键字:

① True (真)

② False(假)

​5.3.2 示例

a = True
b = False

5.4 列表(List)

列表是有序的。

​5.4.1 语法

列表用方括号和逗号隔开来表示。

​5.4.2 示例

a = [2,3,4,5,6]
b = [1]

​5.4.3 列表索引

如图:



在python中索引会有正序索引负序索引正序索引是从0开始的,负序索引是从-1开始的,例如列表a中数值2所对应的正序索引是0,负序索引是-4。

5.5 元祖(Tuple)

元祖是有序的。

​5.5.1 语法

元祖用小括号和逗号隔开来表示。

注:如果元祖只有一个值,那么一定要用" ,"结尾 !!!

​5.5.2 示例

a = (2,3,4,5,6)
b = (1,)

​​5.5.3 元祖索引

如图:



元祖和列表的索引表示方式是一样的。

5.6 字典(Dict)

字典是无序的。

​5.6.1 语法

① 字典用大括号的键值对表示,每个键值对之间用逗号分开,键是唯一的(否则后面的会覆盖前面的),值可以不唯一。

② 键必须是不可变类型,值可以取任何类型。

​5.6.2 示例

a = { "name": "可乐", "age": 18 }
b = { "name": "kele是可乐呀" }

字典是无序的,所以没有索引的概念。

5.7 集合(Set)

集合Set是无序的不重复的数据类型。

​5.7.1 语法

用大括号或者set()创建,但是没有键值对的概念。

注:如果创建一个空集合用set()创建,{}表示创建一个字典。

​5.7.2 示例

a = { "可乐", 18 }
b = set()

集合是无序的,所以没有索引的概念。

5.8 说明

  • 可变类型:包含列表字典

    本质:改变原变量的值,不会改变原有的内存地址。
  • 不可变类型字符串数字元祖

    本质:改变原变量的值,改变原有的内存地址。

到此我们在本篇当中就已经学习了python当中的变量、注释、运算符、关键字以及数据类型。下一篇可乐将和大家一起来看看数据类型的常用方法,条件语句和循环语句

在结尾呢,可乐给大家准备了一个思考题用来巩固本篇的内容:

定义一个字典a,有两个键值对:一个键值对key是可乐,value是18;另一个键值对key是python,value是列表形式的1,2,3,4,5。

在下一篇中可乐会留下答案。

< END>

Python基础(上篇)的更多相关文章

  1. 吾八哥学Python(四):了解Python基础语法(下)

    咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary( ...

  2. Python 基础 面向对象之二 三大特性

    Python 基础 面向对象之二 三大特性 上一篇主要介绍了Python中,面向对象的类和对象的定义及实例的简单应用,本篇继续接着上篇来谈,在这一篇中我们重点要谈及的内容有:Python 类的成员.成 ...

  3. Python基础(下篇)

    本篇文章主要内容:异常处理,函数,模块和包. 在开始正篇之前我们先来看看上一篇可乐留下的题目. 题目: 变量 a= {"name": "可乐", "a ...

  4. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  5. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  6. Python小白的发展之路之Python基础(一)

    Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...

  7. Python之路3【第一篇】Python基础

    本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...

  8. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  9. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  10. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

随机推荐

  1. (1)Consul在linux环境的集群部署

    1.Consul概念 1.1什么是Consul? Consul是一种服务网格解决方案,是HashiCorp公司推出的开源组件,由Go语言开发,部署起来很容易,只需要极少的可执行程序和配置.同时Cons ...

  2. 痞子衡嵌入式:深入i.MXRT1050系列ROM中串行NOR Flash启动初始化流程

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是深入i.MXRT1050系列ROM中串行NOR Flash启动初始化流程. 从外部串行NOR Flash启动问题是i.MXRT系列开发最 ...

  3. 第4.7节 Python特色的序列解包、链式赋值、链式比较

    一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...

  4. url的组成结构信息

    http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name 从上面的URL可以看出,一个完整的 ...

  5. web文件包含

    web安全~文件包含总结   文章来自freebuf,作者总结的很好,所以拿来做笔记用!!! 0×01 文件包含简介 服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当P ...

  6. django学习——request.POST.get(‘key’) 、 request.GET.get('key', '')

    request.POST是用来接受从前端表单中传过来的数据,比如用户登录过程中传递过来的username.passwrod等字段.返回类型是字典: 在后台进行数据获取时,有两种方法(以username ...

  7. 记阿里云 RDS MySQL 的一个大坑

    花了一个下午的时间,终于把一个阿里云 RDS MySQL 的一个大坑填上了,解决方法令人匪夷所思!绝对会让各位看官感到大吃一惊,阿里云 RDS MySQL 居然有这样 xx 的大坑! 问题 最近应业务 ...

  8. bert实践

    github参考:https://github.com/wangjiwu/BERT-sentiment--classification 一.准备数据 bert官方与训练数据下载 自己的数据集,(训练集 ...

  9. ASP.NET 漂亮美观的验证码

    效果预览: 1.随机码和图片流生成 public class ValidateCode { /// <summary> /// 產生圖形驗證碼. /// </summary> ...

  10. Number.isNaN和isNaN

    isNaN会通过Number方法,试图将字符串"测试"转换成Number类型,但转换失败了,因为 Number('测试') 的结果为NaN ,所以最后返回true. 而Number ...