30天python从零到一---第三天:python基础语法
Posted 披星戴月的贾维斯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了30天python从零到一---第三天:python基础语法相关的知识,希望对你有一定的参考价值。
🍎 博客主页:🌙@披星戴月的贾维斯
🍎 欢迎关注:👍点赞🍃收藏🔥留言
🍇系列专栏:🌙 Python专栏
🌙请不要相信胜利就像山坡上的蒲公英一样唾手可得,但是请相信,世界上总有一些美好值得我们全力以赴,哪怕粉身碎骨!🌙
🍉一起加油,去追寻、去成为更好的自己!
文章目录
提示:以下是本篇文章正文内容,下面案例可供参考
🍎1、注释
🔥1.1、注释是什么?🔥
注释是一种特殊的代码, 它不会影响到程序的执行, 但是能够起到解释说明的作用, 能够帮助程序猿理解程序代码的执行逻辑。
写代码是一件比较烧脑的事情, 读代码同样也非常烧脑. 相比于一板一眼的代码, 一些口语化的描述能更好的帮助我们理解程序.
代码示例:
"""
文档注释
这是计算方差的代码
"""
# 这是计算方差的代码 注释的方式之一,行注释
avg = (67.5 + 89.0 + 12.9 + 32.2) / 4 # 变量赋值
total=(67.5 - avg) ** 2 + (89.8 - avg) ** 2 + (12.9 - avg) ** 2 + (32.2 - avg)
#** 是代表乘方
results = total / 3
print(results)
#+空格是开头的注释,一般是写在要注释的代码的上方。
也是少数情况下是要注释代码的右侧的。
很少写在代码的下方,更不会写到代码左侧。
🔥1.2、 注释的语法?🔥
Python 中有两种风格的注释.
(1) 注释行
使用 # 开头的行都是注释.
# 这是一行注释.
(2) 文档字符串
使用三引号引起来的称为 “文档字符串”, 也可以视为是一种注释.
可以包含多行内容,
一般放在 文件/函数/类 的开头.
“”" 或者 ‘’’ 均可 (等价)
"""
这是文档字符串
这是文档字符串
"""
(3)批量注释 选中 + ctrl + /
🔥1.3、注释的规范
- 内容准确: 注释内容要和代码一致, 匹配, 并在代码修改时及时更新.
- 篇幅合理: 注释既不应该太精简, 也不应该长篇大论.
- 使用中文: 一般中国公司都要求使用中文写注释, 外企另当别论.
- 积极向上: 注释中不要包含负能量(例如 穷B 等).
🍎 2、输入输出
🔥2.1、和用户交互🔥
程序需要和用户进行交互.
- 用户把信息传递给程序的过程, 称为 “输入”.
- 程序把结果展示给用户的过程, 称为 “输出”.
输入输出的最基本的方法就是控制台. 用户通过控制台输入一些字符串, 程序再通过控制台打印出一些字符串.
PyCharm 运行程序, 下方弹出的窗口就可以视为是控制台
输入输出的最常见方法是图形化界面.如我们平时用到的 QQ, 浏览器, steam 等, 都不需要用户输入命令, 而只是通过鼠标点击窗口点击按钮的方式来操作.
🔥2.2、通过控制台输出🔥
Python 使用 print 函数输出到控制台.
print('hello')
不仅能输出一个字符串, 还可以输出一个其他类型的变量
a = 10
print(a)
b = True
print(b)
格式化输出字符串‘
a = 10
print(f"a = a + 10") # 格式化输出字符串
注意:
- 使用 f 作为前缀的字符串, 称为 f-string
- 里面可以使用 来内嵌一个其他的变量/表达式.
🔥2.3、通过控制台输入🔥
python 使用 input 函数, 从控制台读取用户的输入.
num = 0
num = input('请输入一个整数: ')
print(f'你输入的整数是 num')
注意:
- input 的参数相当于一个 “提示信息”, 也可以没有.
- input 的返回值就是用户输入的内容. 是字符串类型.
- input执行的时候,就会等待用户输入。
通过 int( ) 把变量转成了 int 类型.
类似的, 使用 float( ), bool( ), str( ) 等可以完成对应的类型转换.
代码示例: 输入 4 个小数, 求 4 个小数的平均值.
a = input('请输入第一个数字: ')
b = input('请输入第二个数字: ')
c = input('请输入第三个数字: ')
d = input('请输入第四个数字: ')
a = float(a)
b = float(b)
c = float(c)
d = float(d)
avg = (a + b + c + d) / 4
print(f'平均值: avg')
🍎 3、 运算符
🔥3.1、算术运算符🔥
像 + - * / % ** // 这种进行算术运算的运算符, 称为 算术运算符
注意1: / 中不能用 0 作为除数. 否则会 抛出异常
print(10 / 0)
注意2: 整数 / 整数 结果可能是小数. 而不会截断
print(1 / 2)
注意3: % 不是 “百分数”, 而是求余数.
print(7 % 2)
关于求余数, 有些同学容易蒙. 其实这个是小学二年级数学就学过的.
7 除以 2 , 商是 3 , 余数是 1.
注意4: ** 是求乘方. 不光能算整数次方, 还能算小数次方.
print(4 ** 2)
print(4 ** 0.5)
注意5: // 是取整除法(也叫地板除). 整数除以整数, 结果还是整数(舍弃小数部分, 并向下取整. 不是四舍五入)
print(7 // 2)
print(-7 // 2)
🔥3.2、算术运算符🔥
像 < <= > >= == != 这一系列的运算符称为 关系运算符, 它们是在比较操作数之间的关系.
其中
- <= 是 “小于等于”
- -> = 是 “大于等于”
- == 是 “等于”
- != 是 “不等于”
(1) 如果关系符合, 则表达式返回 True. 如果关系不符合, 则表达式返回 False
a = 10
b = 20
print(a < b)
print(a <= b)
print(a > b)
print(a >= b)
print(a == b)
print(a != b)
(2) 关系运算符不光针对整数/浮点数进行比较, 还能针对字符串进行比较.
a = 'hello'
b = 'world'
print(a < b)
print(a <= b)
print(a > b)
print(a >= b)
print(a == b)
print(a != b)
**注意: **
- 直接使用 == 或者 != 即可对字符串内容判定相等. (这一点和 C / Java 不同).
- 字符串比较大小, 规则是 “字典序” 。针对中文进行字符串比较是没有意义的!
(3) 对于浮点数来说, 不要使用 == 判定相等
print(0.1 + 0.2 == 0.3)
注意: 浮点数在计算机中的表示并不是精确的! 在计算过程中, 就容易出现非常小的误差
print(0.1)
print(0.2 + 0.1)
可以看到, 0.1 + 0.2 的结果并非是 0.3 , 而是带了个小尾巴. 虽然这个尾巴非常小了, 但是 == 是锱铢必较的, 仍然会导致 == 的结果为 False.
正确的比较方式: 不再严格比较相等了, 而是判定差值小于允许的误差范围.
a = 0.1 + 0.2
b = 0.3
print(-0.000001 < (a - b) < 0.000001)
🔥3.3、逻辑运算符🔥
像 and or not 这一系列的运算符称为 逻辑运算符。这个和C/java有所不同,C/java里是&& || 。
代码示例
a = 10
b = 20
c = 30
print(a < b and b < c)
print(a < b and b > c)
print(a > b or b > c)
print(a < b or b > c)
print(not a < b)
print(not a > b)
a < b and b < c 这个操作等价于 a < b < c这个设定和大部分编程语言都不相同。
关于短路求值
和其他编程语言类似, Python 也存在短路求值的规则
- 对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.
- 对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.
print(10 > 20 and 10 / 0 == 1)
print(10 < 20 or 10 / 0 == 1)
上述代码没有抛出异常, 说明右侧的除以 0 操作没有真正执行.
🔥3.4、赋值运算符
(1) = 的使用
= 表示赋值. 这个我们已经用过很多次了. 注意和 == 区分.
= 除了基本的用法之外, 还可以同时针对多个变量进行赋值.
链式赋值
a = b = 10;
多元赋值
a, b = 10, 20
(2) 复合赋值运算符
Python 还有一些 复合赋值运算符. 例如 += -= *= /= %=
其中 a += 1 等价于 a = a + 1 . 其他复合赋值运算符也是同理
a = 10
a = a + 1
print(a)
b = 10
b += 1
print(b)
注意: 像 C++ / Java 中, 存在 ++ – 这样的自增/自减运算符. Python 中则不支持这种运算.
🍎 4、总结
本文总共介绍了Python中注释,输入输出,以及运算符等三个知识点,希望大家读后也能有所收获!
30天python从零到一---第四天:python基础语法
🍎 博客主页:🌙@披星戴月的贾维斯
🍎 欢迎关注:👍点赞🍃收藏🔥留言
🍇系列专栏:🌙 Python专栏
🌙请不要相信胜利就像山坡上的蒲公英一样唾手可得,但是请相信,世界上总有一些美好值得我们全力以赴,哪怕粉身碎骨!🌙
🍉一起加油,去追寻、去成为更好的自己!
文章目录
提示:以下是本篇文章正文内容,下面案例可供参考
🍎1、顺序语句
🔥1.1、顺序语句的概念 ?🔥
默认情况下, Python 的代码执行顺序是按照从上到下的顺序, 依次执行的。
这个顺序是不会乱的
print("111")
print("2111")
print("3111")
执行结果一定为 “111 2111 3111”, 而不会出现 "3111 2111 111"等. 这种按照顺序执行的代码,我们称为顺序语句。
这个顺序是很关键的. 编程是一件明确无歧义的事情. 安排好任务的顺序, 计算机才能够正确的进行执行.
🍎2、条件语句
🔥2.1、什么是条件语句 ?🔥
条件语句能够表达 “如果 … 否则 …” 这样的语义. 这构成了计算机中基础的逻辑判定。
条件语句 也叫做 分支语句, 表示了接下来的逻辑可能有几种走向
举个例子:
如果我在学校里没有买电动车
1.那么我去教室得走路去,如果起得晚,很可能会迟到
2.那么我去教室或者去其他远点的地方得骑共享单车,或者坐别人的车。…
例子2:
如果我认真敲代码
我就很容易找到工作
否则
我就容易毕业就失业
其中 “我认真敲代码” 称为 条件. 如果条件成立(条件为真), 则会出现 “我就很容易找到工作” 这个情况. 如果条件不成立(条件为假), 则会出现 “我就容易毕业就失业”.
🔥2.2、语法格式 ?🔥
Python 中使用 if else 关键字表示条件语句
(1) if
if expression:
do_something1
do_something2
next_something
如果 expression 值为 True, 则执行 do_something1, do_something2, next_something
如果 expression 值为 False, 则只执行 next_something, 不执行 do_something1, do_something2
(2) if - else
if expression:
do_something1
else:
do_something2
如果 expression 值为 True, 则执行 do_something1
如果 expression 值为 False, 则执行 do_something2
(3) if - elif - else
if expression1:
do_something1
elif expression2:
do_something2
else:
do_something3
如果 expression1 值为 True, 则执行 do_something1
如果 expression1 值为 False, 并且 expression2 为 True 则执行 do_something2
如果 expression1 值为 False, 并且 expression2 为 False 则执行 do_something3
注意: Python中的条件语句写法, 和很多编程语言不太一样.
- if 后面的条件表达式, 没有 ( ), 使用 : 作为结尾.
- if / else 命中条件后要执行的 “语句块”, 使用 缩进 (通常是 4 个空格或者 1 个 tab)来表示, 而不是
- 对于多条件分支, 不是写作 else if, 而是 elif (合体了).
代码示例:
choise = input("输入1 表示买了电动车 输入2 表示没买电动车:")
# 注意这里比较的是字符串 1,而不是整数1 ,整数需要int()强转
if choise == '1':
print('你能更快去上课')
else:
print('得去走路上课')
我们还可以对代码进行改进,因为用户可能输入既不是1,也不是2,我们要把这种判定为非法操作。
choise = input("输入1 表示买了电动车 输入2 表示没买电动车:")
# 注意这里比较的是字符串 1,而不是整数1 ,整数需要int()强转
if choise == '1':
print('你能更快去上课')
elif choise == '2':
print('得去走路上课')
else:
print('用户输入非法!')
🔥2.2、缩进和代码块 ?🔥
代码块 指的是一组放在一起执行的代码.
在 Python 中使用缩进表示代码块. 不同级别的缩进, 程序的执行效果是不同的.
# 代码1
a = input("请输入一个整数: ")
if a == "1":
print("hello")
print("world")
# 代码2
a = input("请输入一个整数: ")
if a == "1":
print("hello")
print("world")
**注意上述代码的区别.
在代码1 中, print(“world”) 有一级缩进, 这个语句属于 if 内的代码块, 意味着条件成立, 才执行, 条件
不成立, 则不执行.
在代码2 中, print(“world”) 没有缩进, 这个语句是 if 外部的代码, 不属于 if 内部的代码块. 意味着条件
无论是否成立, 都会执行. **
Python 嵌套代码
a = input("请输入第一个整数: ")
b = input("请输入第二个整数: ")
if a == "1":
if b == "2":
print("hello")
print("world")
print("python")
在这个代码中,
print(“hello”) 具有两级缩进, 属于 if b == “2” 条件成立的代码块.
print(“world”) 具有一级缩进, 属于 if a == “1” 条件成立的代码块.
print(“python”) 没有缩进, 无论上述两个条件是否成立, 该语句都会执行
基于缩进的方式表示代码块, 带来的好处就是强制要求程序猿要写明确的缩进, 来明确代码之间的相对关
系. 如果缩进书写的不对, 则直接报错.
像 C++ / Java 这些语言, 即使完全不写缩进, 语法也不会报错. 代码可读性就比较差.
同时, 带来的坏处就是, 如果缩进层次比较多, 就容易分不清楚某个语句属于哪个层级.
上点让人读起来难受的代码
if a == 1:
if b == 2:
if c == 3:
if d == 4:
if e == 5:
if f == 6:
if g == 7:
print("hello")
print("1")
print("2")
因此, 就有了 “写 Python 需要自备游标卡尺” 这个梗.
🍎3、空语句 pass
代码示例: 输入一个数字, 如果数字为 1, 则打印 hello
a = int(input("请输入一个整数:"))
if a == 1:
print("hello")
这个代码也可以等价写成
a = int(input("请输入一个整数:"))
if a != 1:
pass
else:
print("hello")
其中 pass 表示 空语句, 并不会对程序的执行有任何影响, 只是占个位置, 保持 Python 语法格式符合要求
a = int(input("请输入一个整数:"))
if a != 1:
else:
print("hello")
程序是不符合 Python 语法的, 会直接报错.
🍎4、总结
本文总共介绍了顺序语句,条件语句,空语句 pass等三个知识点,希望大家读后也能有所收获!
以上是关于30天python从零到一---第三天:python基础语法的主要内容,如果未能解决你的问题,请参考以下文章
30天python从零到一---第二天:python基础语法