文章目录

  • 1.python软件配置---jupyter notebook
    • 1.把pip升级到最新版本
    • 2. 安装Jupyter Notebook
    • 3.jupyter notebook启动
  • 2 python基础语法
    • 2.1 数字和字符串定义方法
    • 2.2 布尔数据类型bool
    • 2.3 jupyter默认输出功能
    • 2.4 print( )打印功能
    • 2.5 shift+tab 查看帮助文档
    • 2.6 tab补全代码功能(重点)
    • 2.7 python注释功能
    • 2.8 input输入
  • 3. 变量
    • 3.1 变量的赋值
    • 3.2 变量的命名规则
    • 3.3 内部保留关键字
    • 3.4 已存在函数名
    • 3.5 同时为多个变量赋值(不常用)
    • 3.6 变量的交换特殊语法
  • 4. 标准数据类型
    • 4.1数字类型
      • 4.1.1 整数型int
      • 4.1.2 浮点型float
      • 4.1.3 复数complex
    • 4.2 数字类型的转换
      • 4.2.1 浮点型float转化为整数int
      • 4.2.2 浮点型float转化为整数Int
    • 4.3 数值的计算
    • 4.4 运算的优先级
    • 4.5 math科学计算库
    • 4.6 复合赋值运算符
    • 4.7 python比较运算符
    • 4.8 逻辑运算符
    • 4.9 字符串
    • 4.10 长字符串
    • 4.11 单引号和双引号以及引号冲突问题
      • 4.11.1 转义符号'\'
      • 4.11.2 转义字符\n
      • 4.11.3 制表符\t
      • 4.11.4 " " 把引号转义成普通字符串
      • 4.11.5 r''对字符串不转义
    • 4.12 字符串的数据类型和函数
    • 4.13 字符串的拼接和重复
    • 4.14 字符串的索引和切片(重点)
    • 4.15 字符串方法
      • 4.15.1 查找索引值find
      • 4.15.2 查找出现次数count
      • 4.15.3 替换replace
      • 4.15.4 切割片split
    • 4.16 字符串的格式化format
    • 4.17 将大写转化为小写lower
    • 4.18 将小写转化为大写lower
    • 4.19 删除字符串的空白符strip
    • 4.20 插入字符串join
    • 4.21 判断字符串内的元素类型
      • 4.21.1 isalpha
      • 4.21.2 isdigit
      • 4.21.3 isalnum
      • 4.21.4 isspace
  • 5. 控制流语句
    • 5.1 if条件判断
    • 5.2 布尔类型bool
    • 5.3 if嵌套
    • 5.4 列表
    • 5.5 循环语句
      • 5.5.1 for 循环
      • 5.5.2 while循环
      • 5.5.3 for循环
      • 5.5.4 range列表
    • 5.6 while循环
    • 5.7 break退出本层循环
    • 5.8 continue

1.python软件配置—jupyter notebook

本文使用的软件为Jupyter notebook ,如果你是小白,那么建议你通过安装Anaconda来解决Jupyter Notebook的安装问题,因为Anaconda已经自动为你安装了Jupter Notebook及其他工具,还有python中超过180个科学包及其依赖项。启动jupyter notebook一般是通过Anaconda Prompt(Anconda3)命令行输入

jupyter notebook


安装好Ancondas,在Anaconda Prompt(Anconda3)中把pip升级指令

1.把pip升级到最新版本

Python 3.x

pip3 install --upgrade pip
  • Python 2.x
pip install --upgrade pip

2. 安装Jupyter Notebook

  • Python 3.x
pip3 install jupyter
  • Python 2.x
pip install jupyter

3.jupyter notebook启动

在终端中输入以下命令:
jupyter notebook
执行命令之后,在终端中将会显示一系列notebook的服务器信息,同时浏览器将会自动启动Jupyter Notebook。

启动过程中终端显示内容如下:

$ jupyter notebook
[I 08:58:24.417 NotebookApp] Serving notebooks from local directory: /Users/catherine
[I 08:58:24.417 NotebookApp] 0 active kernels
[I 08:58:24.417 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
[I 08:58:24.417 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
  • 注意:之后在Jupyter Notebook的所有操作,都请保持终端不要关闭,因为一旦关闭终端,就会断开与本地服务器的链接,你将无法在Jupyter Notebook中进行其他操作啦。
    浏览器地址栏中默认地将会显示:http://localhost:8888。其中,“localhost”指的是本机,“8888”则是端口号。

    如果你同时启动了多个Jupyter Notebook,由于默认端口“8888”被占用,因此地址栏中的数字将从“8888”起,每多启动一个Jupyter Notebook数字就加1,如“8889”、“8890”……
    大概的jupyter notebook介绍到这里 如果大家想看详细的介绍,给你们找了一个专栏介绍 :Jupyter Notebook介绍、安装及使用教程

2 python基础语法

2.1 数字和字符串定义方法

  1. 定义数字
# 赋值语句
b = 100 # 定义了一个变量,把100这个数赋给b
  1. 定义字符串
k = 'hello world'

2.2 布尔数据类型bool

布尔数据类型就是我们常说的真和假,只有两个值构成,True和False

a = True # a定义为真
b = False #b定义为假

判断表达式

100 < 300
out[1] :True

2.3 jupyter默认输出功能

默认,代码的最后一行,如果能够输出变量内容,就会自动输出

a = 1
b = 2
a+bout[]: 3

2.4 print( )打印功能

print是打印的意思,在这里指的是向屏幕上输出指定的文字

print 可以打印单个值,也可以打印多个值,还可以设置以什么字符作为多个值之间的分隔.

print('iron Man', 'Spideman','Hulk',sep='===>',end='....')
print('Captain',end='....')
print('Superman')
print('Batman')iron Man===>Spideman===>Hulk....Captain....Superman
Batman

注释:

  • sep表示 string inserted between values, default a space.(值之间插入的字符串,默认为空格)
  • end表示string appended after the last value, default a newline.结尾字符串附加在最后一个值之后,默认为换行符

2.5 shift+tab 查看帮助文档

  • 方法1
shift+tab
  • 方法2
?print

2.6 tab补全代码功能(重点)

  • 重点: 查看帮助文档的方法
  • 不仅可以注释还可以作为循环语句的对齐功能

2.7 python注释功能

  • 可以采用#直接注释
  • 可以采用**ctrl+?**进行注释(一般进行多行注释采用这个)

2.8 input输入

在上面的部分我们实际上已经学习过了输出功能print, 那么下面让我们来看一下输入功能input函数的使用方法

a = input('请输入您的姓名')
请输入您的姓名zhangsan

可以配合float与int一起使用

b = int(  input('输入一个数字:')  ) # 不管你输入什么,都是字符串
type(b)
输入一个数字:333
int

3. 变量

  1. python是动态数据类型
  2. python中的变量不需要声明, 直接赋值就可以使用
  3. 变量在使用之前必须进行赋值
  4. Python会根据你赋给的值自动判断变量的数据类型
  • 其实变量并没有什么类型
  • 变量只是指向了一个内存地址, 内存地址中储存了我们的数据, 这个数据是具有数据类型的
  • 变量可以重复赋值, 后面的值会覆盖前边的值
  • 改变变量的值, 其实就是改变了变量指向的内存地址!

要理解变量,一定要理解数据在内存中的储存形式,变量只是一个对在内存中储存的某一个东西的指引

变量指引的位置可以变化,这是变量的值就会发生变化

当我使用变量,实际上是相当于在使用变量指向的那个内存地址中的值.

3.1 变量的赋值

a = 666

3.2 变量的命名规则

重点: 变量命名规则:

  1. 变量名的长度不受限制,但其中的字符必须是字母、数字、或者下划线_,而不能使用空格、连字符、标点符号、引号或其他字符。
  2. 变量名的第一个字符不能是数字,而必须是字母或下划线。
  3. Python区分大小写。
  4. 不能将Python关键字用作变量名。
Abc = 1
abc = 2Abc
1abc
2

3.3 内部保留关键字

这些都是内部关键词

import keyword
print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await','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']

3.4 已存在函数名

sum((2,3))
5sum = 1
sum((2,3))

这样的sum((2,3))会报错,因为sum不是上面常用的内部关键词,所以sum可以赋值,所以再把sum当成求和函数就会报错了

3.5 同时为多个变量赋值(不常用)

a = b = c = "可以"   # 这种方法可以的, 不十分推荐

3.6 变量的交换特殊语法

# 通常的交换方法a = 1
b = 2
temp = a
a = b
b = temp

4. 标准数据类型

就像我们平时说的, 小数, 整数, 复数之间的区别一样, 在每种编程语言中, 数据都可以以不同的形式储存在内存中, 这些不同的形式就叫做数据类型.

用不同数据类型储存的数据, 具有不同的储存结构, 对应的也就有不同的使用方法和功能.

下面让我们来看一下python中的常用数据类型

python中常用的数据类型有

  • 数字(Numbers)整数int, 浮点数float, 复数complex
  • 布尔(Booleans)函数为bool, 含有的值为True和False
  • 字符串(Strings)函数为str , Uniconde字符序列, 在引号内包含
  • 列表(list)有序的值的序列
  • 元组(tuple)有序的值的序列且不可改变
  • 字典(Dictionaries)函数为dict, 无序的键值对的组合
  • 集合(Sets)函数为set, 无序的不含重复值的序列

4.1数字类型

int 整数型 float浮点型 complex复数

4.1.1 整数型int

Python的整数长度没有限制,通常是连续分配的内存空间。

a = 256
type(a)
int

4.1.2 浮点型float

浮点型就是我们常说的小数型

k = 3.1
type(k)float

4.1.3 复数complex

复数包括虚部与实部

complex(2)
(2+j0)

4.2 数字类型的转换

4.2.1 浮点型float转化为整数int

int(7.8)
7

4.2.2 浮点型float转化为整数Int

int(float('666.6'))
#浮点型字符串不能直接转化为整数 需要转化为浮点型 再转化为整数

4.3 数值的计算

下面以a=10 ,b=20为例进行计算

运算符 描述 实例
+ 两个对象相加 a + b 输出结果 30
- 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ x除以y b / a 输出结果 2
// 取整除 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
% 取余 返回除法的余数 b % a 输出结果 0
** 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000

4.4 运算的优先级

乘除大于加减

指数运算大于乘除

(3 + 4) * (2 + 3)
35

4.5 math科学计算库

python内置的一些计算函数:
abs(x) 返回x的绝对值,类型随x
max(n1, n2, …) 返回最大值
min(n1, n2, …) 返回最小值
round(x [,n]) 默认返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的n位。例如round(1.23456, 3)返回1.235

python还提供科学计算等库,例如math,导入math库后,常用的函数有:
fabs(x) 返回x的绝对值,类型是浮点数
ceil(x) 取x的上入整数,如math.ceil(4.1)返回5
floor(x) 取x的下入整数,如math.floor(4.9)返回4
exp(x) 返回e的x次幂,e是自然常数
sqrt(x) 返回x的平方根,返回值是float类型
modf(x) 返回x的整数部分和小数部分,两部分的符号与x相同,整数部分以浮点型表示。例如math.modf(4.333),返回元组(0.3330000000000002, 4.0)
log10(x) 返回以10为基数的x的对数,返回值类型是浮点数
log(x,y) 返回以y为基数的x的对数,返回值类型是浮点数
pow(x, y) 返回x的y次幂,即x**y

4.6 复合赋值运算符

运算符 描述 实例
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
** = 幂赋值运算符 c ** = a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a

4.7 python比较运算符

运算符 描述 示例
== 检查两个操作数的值是否相等,如果是则条件变为真。 如a=3,b=3则(a == b) 为 true.
!= 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 如a=1,b=3则(a != b) 为 true.
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 如a=7,b=3则(a > b) 为 true.
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 如a=7,b=3则(a < b) 为 false.
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3则(a >= b) 为 true.
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3则(a <= b) 为 true.

4.8 逻辑运算符

运算符 逻辑表达式 描述 实例
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。
or x or y 布尔"或" - 如果 x 是 True,它返回 True,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False
  • 案例
a = 3
b = 4
c = 5
(a < 4) and (b != 4)False

4.9 字符串

字符串是指以"“双引号, 或者’'单引号括起来的任意文本, 例如"abaa”, '1232’凡是在引号中的都是字符串

s = "你好"
d = '也可以'

4.10 长字符串

当字符串比较长,一行写不下,需要换行的时候,可以使用长字符串

s_length = """知而不行,谓之不诚。
行而不成,谓之不能。
知而行,是赤诚之心,行而能,是贯彻到底,已经很难被其他人和事影响了。
而知行合一的前提是,格物致知,将一件事研究到极致,变成自己的知识。
比如做菜,将做菜这门手艺做到尽善尽美,色香味无可挑剔;比如建筑,将楼宇亭台建得坚固美观使用,美轮美奂,风雨不倒地震不塌;比如造船,将造船原理吃透,用料坚固,风浪不沉。
这便是格物致知,将一件东西一件事情研究到极点,明白其中所有的道理。
做到格物致知,方能知行合一。
"""

4.11 单引号和双引号以及引号冲突问题

  • 单引号和双引号没有区别
s3 = "abc"
s4 = 'bcd'

当字符串本身内容中包含有引号时,可能会引起引号冲突

s5 = "Rose:"You""
s5
报错如下File "<ipython-input-24-7c528ab94020>", line 1s5 = "Rose:"You""^
SyntaxError: invalid syntax

转义字符有很多,这里介绍几个常见的

  1. \n 表示换行
  2. \t 表示制表符
  3. \ 转义反斜杠
  4. " 把引号转义成普通字符串
    转义字符如可以把本身没有含义的普通字符转换成特殊功能字符,也可以把本身有特殊功能的字符转换成普通字符。
  5. 将有特殊涵义的符号,转换成没有特殊含义的
  6. 将没有特殊含义的符号,转换成有特殊含义的符号
    此时程序会报错,需要对程序进行转义

4.11.1 转义符号’’

\ 转义反斜杠

s5 = "Rose:\"You jump,I jump!\""
s5
'Rose:"You jump,I jump!"'

4.11.2 转义字符\n

\n 表示换行

4.11.3 制表符\t

\t 表示制表符

4.11.4 " " 把引号转义成普通字符串

" 把引号转义成普通字符串

4.11.5 r’'对字符串不转义

python中也可以用r’'这种语法创建原生字符串,原生字符串中的字符串不进行转义

print(r'前边添加一个r,字符串\n里面的\t反斜杠不生效') # 原生字符串
前边添加一个r,字符串\n里面的\t反斜杠不生效

4.12 字符串的数据类型和函数

type("a")
str

注: 字符串也是一个可迭代对象, 迭代次数就是字符串的字符数

4.13 字符串的拼接和重复

字符串 使用 + 相当于拼接两个字符串

字符串 * n , 相当于把字符串重复n次

"梅西" + "C罗"
'梅西C罗''3'+'4'
'34'

4.14 字符串的索引和切片(重点)

字符串也是一个可迭代对象, 也就是说每一个字符串实际上都有一个对应的索引值。

索引值从零开始计算,每一个字符对应一个唯一的索引值。

索引值也可以从后往前算,后面从负一开始计算。

test = "零一二三四五六七八九"
test[0]
'零'

有的时候我不仅仅想取出字符串的其中一个字符,想要取出其中一部分,这时候应该怎么做呢?

字符串切片的标准语法:

string[开始位置:终止位置:步长和方向]

注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。

这里以字符串为例进行讲解,实际上列表也会具有相同的方法.

4.15 字符串方法

字符串的方法很多,这里只讲一些比较常用的字符串处理方法

4.15.1 查找索引值find

检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1

mystr.find(str, start=0, end=len(mystr))

案例

s_find = "abcdefgabc"
s_find.find('d')
3

4.15.2 查找出现次数count

返回 str在start和end之间 在 mystr里面出现的次数

mystr.count(str, start=0, end=len(mystr))

案例

s_test = """御剑乘风来,除魔天地间,
有酒乐逍遥,无酒我亦颠,
一饮尽江河,再饮吞日月,
千杯醉不倒,唯我酒剑仙。"""
s_test.count(',')
7

4.15.3 替换replace

把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.

mystr.replace(str1, str2, mystr.count(str1))

案例

s10 = """桃花坞里桃花庵,桃花庵里桃花仙;桃花仙人种桃树,又摘桃花换酒钱。
酒醒只在花前坐,酒醉还来花下眠;半醒半醉日复日,花落花开年复年。
但愿老死花酒间,不愿鞠躬车马前;车尘马足贵者趣,酒盏花枝贫者缘。
若将富贵比贫贱,一在平地一在天;若将贫贱比车马,他得驱驰我得闲。
世人笑我太疯癫,我笑世人看不穿;不见五陵豪杰墓,无花无酒锄作田。"""# -1表示所有的都修改,正数表示修改次数
print(s10.replace('桃花','荷花',-1))
荷花坞里荷花庵,荷花庵里荷花仙;荷花仙人种桃树,又摘荷花换酒钱。
酒醒只在花前坐,酒醉还来花下眠;半醒半醉日复日,花落花开年复年。
但愿老死花酒间,不愿鞠躬车马前;车尘马足贵者趣,酒盏花枝贫者缘。
若将富贵比贫贱,一在平地一在天;若将贫贱比车马,他得驱驰我得闲。
世人笑我太疯癫,我笑世人看不穿;不见五陵豪杰墓,无花无酒锄作田。

4.15.4 切割片split

以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串

mystr.split(str=" ", 2)

案例

s10 = """桃花坞里桃花庵,桃花庵里桃花仙;桃花仙人种桃树,又摘桃花换酒钱。
酒醒只在花前坐,酒醉还来花下眠;半醒半醉日复日,花落花开年复年。
但愿老死花酒间,不愿鞠躬车马前;车尘马足贵者趣,酒盏花枝贫者缘。
若将富贵比贫贱,一在平地一在天;若将贫贱比车马,他得驱驰我得闲。
世人笑我太疯癫,我笑世人看不穿;不见五陵豪杰墓,无花无酒锄作田。"""
s10.split(',')
['桃花坞里桃花庵','桃花庵里桃花仙;桃花仙人种桃树','又摘桃花换酒钱。\n酒醒只在花前坐','酒醉还来花下眠;半醒半醉日复日','花落花开年复年。\n但愿老死花酒间','不愿鞠躬车马前;车尘马足贵者趣','酒盏花枝贫者缘。\n若将富贵比贫贱','一在平地一在天;若将贫贱比车马','他得驱驰我得闲。\n世人笑我太疯癫','我笑世人看不穿;不见五陵豪杰墓','无花无酒锄作田。']

4.15.5 按照行切割splitlines
按照行分隔,返回一个包含各行作为元素的列表

mystr.splitlines()

案例

split_test = """When you are old and grey and full of sleep,
And nodding by the fire,take down this book,
And slowly read,and dream of the soft look
Your eyes had once,and of their shadows deep;
How many loved your moments of glad grace,
And loved your beauty with love false or true,
But one man loved the pilgrim Soul in you
And loved the sorrows of your changing face;
And bending down beside the glowing bars,
Murmur,a little sadly,how Love fled
And paced upon the mountains overhead
And hid his face amid a crowd of stars."""split_test.splitlines() # 以换行符进行切割['When you are old and grey and full of sleep,','And nodding by the fire,take down this book,','And slowly read,and dream of the soft look ','Your eyes had once,and of their shadows deep; ','How many loved your moments of glad grace, ','And loved your beauty with love false or true,','But one man loved the pilgrim Soul in you','And loved the sorrows of your changing face;','And bending down beside the glowing bars,','Murmur,a little sadly,how Love fled','And paced upon the mountains overhead','And hid his face amid a crowd of stars.']

4.16 字符串的格式化format

a = "美丽的"
b = "你在哪里"
"你好吗, {}张小姐{}".format(a,b)'你好吗, 美丽的张小姐你在哪里'

4.17 将大写转化为小写lower

转换 mystr 中所有大写字符为小写 mystr.lower()

a = "ADFEdifeiASF"a.lower()
'adfedifeiasf'

4.18 将小写转化为大写lower

转换 mystr 中的小写字母为大写 mystr.upper()

a = "ADFEdifeiASF"
a.upper()
'ADFEDIFEIASF'

4.19 删除字符串的空白符strip

删除mystr字符串两端的空白字符,字符串中间的字符不会删除

4.20 插入字符串join

mystr 中每个字符后面插入str,构造出一个新的字符串

mystr.join(str)

案例

"-->".join("河南大学在开封")
'河-->南-->大-->学-->在-->开-->封'

4.21 判断字符串内的元素类型

4.21.1 isalpha

如果 mystr 所有字符都是字母 则返回 True,否则返回 False

mystr.isalpha()

4.21.2 isdigit

如果 mystr 只包含数字则返回 True 否则返回 False.

mystr.isdigit()

4.21.3 isalnum

如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False

mystr.isalnum()

4.21.4 isspace

如果 mystr 中只包含空格,则返回 True,否则返回 False.

mystr.isspace()

5. 控制流语句

顺序语句

  • 从左到右, 从上到下

5.1 if条件判断

计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。
比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现:

if <条件判断表达式>:<当上面的代码成立时,运行代码>

案例
根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。

也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else执行了:

a=8
if a<6 :print("a")
else:print(a)
8

elif是else if的缩写,完全可以有多个elif,所以if语句的完整形式就是:
所以if语句的完整形式就是:

if <条件判断1>:<执行1>
elif <条件判断2>:<执行2>
elif <条件判断3>:<执行3>
else:<执行4>

if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elif和else

5.2 布尔类型bool

布尔类型和其他数据类型之间的转换关系
所有空值为假,其他为真
if判断条件还可以简写,比如写:

if x:print('True')

只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False。

5.3 if嵌套

if嵌套的格式

 if 条件1:满足条件1 做的事情1满足条件1 做的事情2...(省略)...if 条件2:满足条件2 做的事情1满足条件2 做的事情2...(省略)...

案例

ticket = True
danger_thing = True
if not danger_thing:print('没有危险物品可以进站')if ticket:print("恭喜上车")else:print('请出去')
else:print('请跟我走一趟')请跟我走一趟

5.4 列表

当我们有一百个变量要储存起来的时候,总不能弄一百个变量啊,怎么办的,用列表.

我们可以对列表这样去理解, 就把它当成一个大桶, 当我们有一堆东西需要找个地方临时存放在一起, 以便后续进行排序, 筛选,提取等操作时, 就弄一个列表, 先放进去.

s = [1,2,3,4,5,6,7,8,9,10]
s2 = ['临','兵','斗','者','皆','列','阵','在','前']

列表中的元素,没有数据类型的限制,可以为任何数据类型

list1 = [1, 2, 3,'on','go',True,False,None]

5.5 循环语句

  • 打印100遍“我错了”

5.5.1 for 循环

for i in range(100):print("我错了")

5.5.2 while循环

i = 0
while i < 100:print("我错了")i += 1

5.5.3 for循环

for循环和编程语言中常见的循环不太一样,它实际上不是一个循环,而是一个遍历功能,会依次对一个可迭代的数据中的每一个数据进行操作.
在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。
for循环的格式

    for 临时变量 in 列表或者字符串等:循环满足条件时执行的代码
for student_name in ['张三' , '李四' , '王五']:# 把这个学生的姓氏打印出来print(student_name[0] )print('-'*30)
张
------------------------------
李
------------------------------
王
------------------------------

5.5.4 range列表

range(10)#表示生成一个0到10的列表
list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

5.6 while循环

while 条件表达式:条件满足时,做的事情1条件满足时,做的事情2条件满足时,做的事情3...(省略)...
i = 0
while i < 5:print('我错了')i += 1
print('运行后面的代码')
我错了
我错了
我错了
我错了
我错了
运行后面的代码

5.7 break退出本层循环

name = '我想要去打游戏,不想学习'
for i in name:if i == ',':breakprint(i)print('------')
我
------
想
------
要
------
去
------
打
------
游
------
戏
------

5.8 continue

结束本"次"循环

continue的作用:用来结束本次循环,紧接着执行下一次的循环

name = '我想要去打游戏,不想学习'
for i in name:# 如果遇到了逗号, 就不打印了if i == ',':continueprint(i)
我
想
要
去
打
游
戏
不
想
学
习

python基础总结---安装、语法、变量、数据类型、计算、语句、(1-3)相关推荐

  1. Python零基础入门(一)——Python基础关键字和语法[学习笔记]

    Python零基础入门(一)--Python基础关键字和语法 目录 1. Hello World! 2. 字符串操作 3. 简单数学计算 4. if elif else 5. 循环 基础类型 pyth ...

  2. Python基础第三课-基本数据类型

    Python基础第三课-基本数据类型 1.几个基本概念 1.1 表达式 1.2 语句 1.3 程序(program) 1.4 函数(function) 2.标识符 2.1 关键字 2.2 标识符概念 ...

  3. Python基础入门:从变量到异常处理--阿里云天池

    文章目录 系列文章目录 文章目录 前言 一.python简介及环境搭建 1.简介 2.环境搭建 二.变量.运算符与数据类型 1.注释 2.运算符 3.变量和赋值 4.数据类型与转换 5.Print() ...

  4. JS-概述-基本语法-变量-数据类型

    概述-基本语法-变量-数据类型 1 JavaScript 概述 ① JavaScript 的特点 JavaScript 是一门动态的,弱类型的,解释型的,基于对象的脚本语言. 动态: 程序执行的时候才 ...

  5. Python基础-类变量和实例变量

    备忘: Python基础-类变量和实例变量 - 珞樱缤纷 - 博客园 python--类中的self到底有什么作用 - jvincent - 博客园 #深入剖析# Python中 __init__ 函 ...

  6. Python基础下载安装卸载

    Python基础下载安装 官网下载地址:https://www.python.org/downloads/ 官网页面如图: 点击[Download Python 3.8.5]进入下载, 下载位置自行选 ...

  7. 【从零起步学Python】Day01-Python环境搭建变量数据类型

    今日目标 能够完成python环境的搭建 能够正确定义变量和使用变量 能够实现程序的输出和输入 掌握常见的python数据类型 什么是编程「了解」 编程是什么 编程是编写程序的中文简称.为了使计算机能 ...

  8. Python基础_Python介绍及变量类型

    目录 一.Python语言介绍 高级语言: 面向对象: 编译性语言: 脚本语言是一种解释性的语言 二.Python起源 三.Python优缺点 1.优点 (1)简单 (2)易学 (3)免费.开源 (4 ...

  9. python基础数据实例_Python基本数据类型及实例详解

    Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对 ...

最新文章

  1. 隐藏系统运行对话框立即启用
  2. Hi3516A开发--烧写/启动模式
  3. Comparable接口和Comparator接口的比较
  4. [XPath] XPath 与 lxml (三)XPath 坐标轴
  5. California Fault Lines: Understanding the Causes and Impact of Network Failures
  6. lintcode循环数组之连续子数组求和
  7. java 数组 c foreach_在Java 8中,为什么Arrays没有给出forEach的Iterable方法?
  8. 利用宝塔部署若依前后分离项目(详细教程)
  9. 阿里云 mysql 连接 慢_记录在阿里云上遇到的一个坑-数据库连接请求缓慢
  10. WannaCry深度详细分析报告 转
  11. python 温度 符号_python中如何将华氏温度转换为摄氏温度?
  12. BGP、MPLS综合实验
  13. Unity TimeLine实用功能讲解
  14. 电子检测报告如何盖骑缝章?
  15. Eclipse运行报错:HTTP Status 500 - javax.servlet.ServletException: java.lang.UnsupportedClassVersionError
  16. shell里面的jq
  17. 隆重公有化财团成员交恶 中绒遭深交所询问
  18. mysql如何做直播_如何做好直播?
  19. Java多线程并发编程知识体系(附大图-持续更新)
  20. 【操作系统】抢占与非抢占式调度

热门文章

  1. python 变量类型注释_变量类型、命名规则及代码注释
  2. 临时手机验证码_实用网站(一)短信验证码 临时网盘 临时邮箱
  3. 计算机课讲什么学生爱学,学生党“最喜欢”的4门课程,尤其是最后1门,学渣:我们的最爱...
  4. python的线性链表_Python线性表——单链表-阿里云开发者社区
  5. php中ci的session自动加载报错
  6. 如何快速正确的安装 Ruby, Rails 运行环境
  7. php ftp rmdir,PHP中的ftp_rmdir()函数
  8. iptables详解(13):iptables动作总结之二
  9. 移动测试架构演进 | 蚂蚁金服自动化用例管理探索
  10. java23种设计模式之五:代理模式