30天python从零到一---第四天:python基础语法
Posted 披星戴月的贾维斯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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等三个知识点,希望大家读后也能有所收获!
Flask从零到一 1 | 虚拟环境和第一个flask程序
本文约2500字,阅读大概需要7分钟
大约还有二十天假期时间,这二十天我准备跟进一个Flask入门系列,大致会分为10-12篇文章。虽然我以后不想做开发,但是Web开发热度还是挺高的,所以就用了一段时间学习了一下,下学期也会有与Web有关的课程,如果对Flask感兴趣的话,可以持续跟进,希望这个系列可以帮到伙伴们。
第一篇主要包括两个方面,一方面是学习Flask之前的准备工作,比如配置相应的环境以及下载一些工具;另一方面就是编写第一个Flask简易程序。
Flask是支持Python2 和 Python3两个版本的,但是在我接触Python的时候已经更新到3.6了,所以我也没有关注Python2。我相信伙伴们应该也大多都在用Python3,所以这个系列会以Python3为基础,Flask的版本使用最新的即可。
这里只对Flask做一个简要的介绍,Flask是一个微框架,本身相当于一个内核,只保留了核心功能:请求响应处理和模板渲染。这两个功能分别有Werkzeug和Jinja实现,Flask本身也包装了这两个依赖,但Flask还拥有很多扩展包,用户可以根据自己的需求导入扩展包实现相应的功能,这也是Flask框架灵活的原因。
Git下载
首先对于Windows用户,推荐下载Git这个工具,虽然很多功能我们在终端也可以实现,但在某些方面上讲使用Git的命令会更加方便,而且它也可以用来记录编写程序的源码和文件的变动情况,Git的下载安装教程可以自己查找,或者参考阅读原文中的博客,过程不是很难。
下载安装完成之后,在搜索栏找到Git Bash,运行时候输入git --version,如果出现对应的版本信息则代表安装成功。
配置虚拟环境
虚拟环境是一种独立于Python全局环境的Python解释器环境,比如一个虚拟环境中的解释器版本可以为Python2,另一个的解释器版本可以为Python3,它们之间是不会相互干扰的,而且也不会受你电脑中Python环境的影响。
配置虚拟环境是很必要的操作,因为不同的程序依赖语言的版本可能会不同,但如果在一台电脑中下载多个版本Python解释器,就会导致全局环境杂乱,虚拟环境很好的解决了这个问题,也便于管理我们的程序。
Python3中内置的venv模块可以创建虚拟环境,首先在系统自带的cmd中通过cd指令进入到指定的文件中,需要注意的是这个路径不能包含中文,然后使用下面指令创建一个虚拟环境。
python -m venv env
其中env为虚拟环境的名称,可以自己拟定。这时会在当前目录下生成一个包含了Python解释器的虚拟环境文件夹,然后在Scripts文件下有两个.bat文件,这两个文件就控制着激活虚拟环境和退出虚拟环境。
通过下面指令就可以激活虚拟环境和退出虚拟环境:
envScriptsactivate#激活
envScriptsdeactivate#退出
或者也可以直接进入Scripts目录下直接输入activate或者deactivae即可,当目录前出现下面这种小括号形式就代表激活虚拟环境成功。
(env)
然后就可以通过pip在虚拟环境中安装Flask,不用指定版本,默认安装最新版本。
pip install flask
第一个flask程序
编写一个flask程序是非常简单的,仅仅几行代码就可以实现,流程大致可以分为以下五步:
-
1、从flask包中导入Flask类 -
2、实例化Flask类,创建一个应用对象 -
3、定义视图函数 -
4、为视图函数添加装饰器(定义路由) -
5、启动flask程序
#从flask包中导入Flask类
from flask import Flask
#创建flask的应用对象
app = Flask(__name__)
@app.route('/')
def hello():
"""定义视图函数"""
return 'Hello NaiTangMao'
if __name__ == "__main__":
#启动flask程序
app.run()
Copy一下网址利用浏览器打开就会出现我们视图函数中返回的信息:
这个flask程序处理过程如下:
-
1、首先用户启动程序,并访问对应的网址。 -
2、服务器解析请求,识别装饰器中绑定的URL。 -
3、匹配URL并调用对应的视图函数。 -
4、获取视图函数的返回值,返回至客户端。
对于上面这几行代码需要掌握几个知识点,首先你应该明确app为Flask类实例化后创建的一个应用对象,但里面的__name__有什么作用呢?
__name__为当前模块名,因为flask程序在运行的时候需要静态文件和模板文件辅助,在你设置__name__之后,flask就会以当前模块(文件)所在目录为根目录,默认这个目录中的static为静态目录,templates为模板目录,因为是默认存在的,所以在根目录中并不会体现出来。不理解不要紧,后面还会涉及这两方面知识。
这时如果我们在访问原来那个网址就会出现Not Found的错误提示,此时必须要访问http://127.0.0.1:5000/hello才能触发视图函数。
一个视图函数也可以同时绑定多个URL,这通过为视图函数添加多个装饰器实现:
@app.route('/')
@app.route('/hello')
def hello():
"""定义视图函数"""
return 'Hello NaiTangMao'
也就是说现在不论我们访问http://127.0.0.1:5000/ 还是 http://127.0.0.1:5000/hello都可以触发这个视图函数。
综上为Flask入门系列的第一篇,主要介绍虚拟环境的配置以及简易flask程序构成部分的简要解析。
本文参考资料:
[1].《Flask入门教程》.李辉著
[2].Flask中文、英文文档
[3].https://www.bilibili.com/video/BV1yt4y1Q7k5?p=5
End
奶糖猫
优秀的人都在看
以上是关于30天python从零到一---第四天:python基础语法的主要内容,如果未能解决你的问题,请参考以下文章
30天python从零到一---第五天:人生重开模拟器 ,循环语句