Python基础(上篇)
本篇文章主要内容:变量、注释、运算符、关键字、数据类型。
在入手变量之前我们先来看看经典的编程语句 → 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基础(上篇)的更多相关文章
- 吾八哥学Python(四):了解Python基础语法(下)
咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary( ...
- Python 基础 面向对象之二 三大特性
Python 基础 面向对象之二 三大特性 上一篇主要介绍了Python中,面向对象的类和对象的定义及实例的简单应用,本篇继续接着上篇来谈,在这一篇中我们重点要谈及的内容有:Python 类的成员.成 ...
- Python基础(下篇)
本篇文章主要内容:异常处理,函数,模块和包. 在开始正篇之前我们先来看看上一篇可乐留下的题目. 题目: 变量 a= {"name": "可乐", "a ...
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- 进击的Python【第二章】:Python基础(二)
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
随机推荐
- mysql主从同步上---主从同步原理
1.主从同步机制 1.1 主从同步介绍和优点 在多台数据服务器中,分为主服务器和从服务器.一台主服务器对应多台从服务器. 主服务器只负责写入数据,从服务器只负责同步主服务器的数据,并让外部程序 ...
- vue 项目在 IE11 里呈现空白,不兼容的问题解决方案
我用vue 2.6.11版本编写的项目,在谷歌浏览器上运行的好好地,但是放到ie11浏览器上却是一片空白. 这个问题遇到的时候,我是蒙蔽了,抓紧去搜了搜百度,百度上的答案倒是都很统一. 都是说ie不兼 ...
- 天池新闻推荐比赛1:赛题理解+baseline
天池新闻推荐比赛1:赛题理解+baseline 一.比赛信息 比赛链接: https://tianchi.aliyun.com/competition/entrance/531842/inform ...
- 07_ListView
ListView是用来显示一个列表的控件,它在Android源代码中是继承AbsListView类的,AbsListView类是继承于AdapterView类的,而AdapterView类是继承Vie ...
- [整理]qbxt集训10场考试 大 杂 烩 (前篇)
Contest 1 A 计算 \(n!\mod 2^{32}\) .发现数一大答案就为 \(0\) ,直接输出即可. B 一个 \(n\times m\) 的网格,网格中的数都在 \([1,nm]\) ...
- JZOJ 2020.10.7 提高B组反思
JZOJ 2020.10.7 提高B组反思 T1 比较简单的一道题 跑\(k\)遍\(SPFA\) 然后全排列顺序枚举求解 TLE 60 双向存边数组没开两倍-- T2 搞出分母 分子不会求 \(n^ ...
- YoyoGo微服务框架入门系列-快速编写WEB API
前言 YoyoGo是一个使用Golang编写的一个简单.轻量.快速.基于依赖注入的微服务框架,目前依然在研发阶段,欢迎Star以及一起参与到框架的研发 GitHub地址:https://github. ...
- PyQt学习随笔:通过自定义类重写QApplication的notify方法捕获应用的所有消息
PyQt程序通过调用QApplication类的exec_()(sys.exit(app.exec_()) 进入程序主循环,开始处理事件,它从事件队列中获取本地窗口系统事件,将它们转化为 QEvent ...
- 「生产事故」MongoDB复合索引引发的灾难
前情提要 11月末我司商品服务的MongoDB主库曾出现过严重抖动.频繁锁库等情况. 由于诸多业务存在插入MongoDB.然后立即查询等逻辑,因此项目并未开启读写分离. 最终定位问题是由于:服务器自身 ...
- POI2009 KON-Ticket Inspector
题目链接 Description 一辆火车依次经过 \(n\) 个车站,顺序是 \(1, 2, 3, ..., n - 1, n\).给定 \(A_{i, j}\) 表示从 \(i\) 站上车,\(j ...