Python环境搭建与输入输出
一、Python概述
1、计算机资源
在开发领域,计算机资源可以分为两部分:软件资源 + 硬件资源
==软件资源:看得见,摸不着==
==硬件资源:看得见,摸得着==
硬件资源(CPU、内存、硬盘、风扇、电源、键盘、鼠标...)
软件资源(Office办公软件、网易云音乐、各种各样的计算机游戏)
思考:我们发现,软硬件之间其实是可以交互的,这是什么原理呢?
答:使用操作系统,==操作系统==是计算机软硬件之间的桥梁
2、操作系统分类
在日常的应用中,操作系统大概可以分为三大类:
① Windows操作系统
② MacOS操作系统
③ Linux操作系统(服务器端使用量最大的操作系统)
3、为什么要学习Python
① 技术趋势
Python自带明星属性,热度稳居编程语言界前三
② 简单易学
开发代码少,精确表达需求逻辑;==33个关键字,7种基本数据类型==;语法规则简单,接近自然语。
③ 应用广泛
Python语言涉及IT行业70%以上的技术领域
4、Python语言的缺点
① Python其运行速度相对于C/C++/Java要略慢一些
② Python由于语言的特性,无法对代码进行加密
③ Python的版本之间,兼容性不太理想(Python2和Python3)
5、Python语言介绍
Python是一种==跨平台==的计算机程序设计语⾔。 是一个高层次的结合了==解释性、编译性、互动性和面向对象==的脚本语⾔。最初被设计用于编写自动化脚本Shell(适用于Linux操作系统),随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。
其实目前很多知名的机器学习、⼈⼯智能以及深度学习框架也都是基于Python语⾔进⾏开发的:
Google开源机器学习框架:TensorFlow
开源社区主推学习框架:Scikit-learn
百度开源深度学习框架:Paddle
6、Python2.x和Python3.x版本的区别
在目前的Python领域,其主要应用版本有两个:Python2和Python3
主要区别可以理解为:==输入、输出以及编码格式的不同==
Python2.x
Python3.x
Python3.6、==Python3.7==、Python3.8、Python3.9...
在生产环境中,我们⼀般不会选择最新版本的Python,因为可能会存在未知Bug,所以⼀般强烈建议大家在选择软件版本时,向前推1 ~ 2个版本。所以咱们课程主要讲解Python3.7版本。
二、Python解析器
1、Python解析器的作用
demo.py
print('Hello World')由于Python属于高级语言,其并不能直接在计算机中运行,因为缺少Python语言的运行环境:Python解析器
Python解析器的作用:==就是把Python代码转换为计算机底层可以识别的机器语言==,如0101...
2、Python解析器的种类
==① CPython,C语言开发的解释器[官方],应⽤广泛的解释器。==
② IPython,基于CPython的一种交互式解释器。
③ 其他解释器
PyPy,基于Python语言开发的解释器。
JPython,运⾏在Java平台的解释器,直接把Python代码编译成Java字节码执⾏。
IronPython,运⾏在微软.Net平台上的Python解释器,可直接把Python代码编译成.Net的字节码。
3、下载Python解析器
下载地址:https://www.python.org/downloads/release/python-379/
[单击上述链接] -- 查找目标文件:Windows x86-64 executable installer -- 单
击即可下载。
4、Python解析器的安装
第一步:双击运行Python的解析器,选择==自定义安装==以及==添加Python到环境变量==
第二步:选择所有要安装的功能菜单,默认全部勾选
pip:Python的包管理工具,可以用来安装未来我们项目中需要使用的各种模块
第三步:设置Python解析器的安装路径,强烈建议安装在除C盘以外的盘符
第四步:测试Python解析器是否可以使用
按Windows + R,输入cmd字符,打开Windows的DOS窗口,输入python(全部小写),如下图所示:
出现了以上界面,就代表Python3.7的解析器已经安装成功了。如何从这个窗口中退出到DOS模式呢?
答:使用exit()方法
>>> exit() 回车三、Python开发工具PyCharm
1、为什么要安装PyCharm
工欲善其事必先利其器
在Python的开发领域,其开发工具非常非常多,EditPlus、Notepad++、Sublime Text3、Visual Studio Code、PyCharm(目前功能最强大的IDE)
2、PyCharm的主要作用
PyCharm是⼀种Python IDE (集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的⼯具,内部集成的功能如下:
Project管理
智能提示
语法高亮
代码跳转
调试代码
解释代码(解释器)
框架和库
......
3、PyCharm的分类
PyCharm一共有两个版本:专业版(收费) 与 社区版(免费、开源)
在基础班,PyCharm社区版足够我们使用,绰绰有余。
4、下载PyCharm
下载地址:https://www.jetbrains.com/pycharm/download/#section=windows
5、PyCharm安装
第一步:双击PyCharm软件安装包,进行软件安装
第二步:设置软件的安装路径,理论上没有任何要求,但是建议放在除C盘以外的盘符
第三步:PyCharm基本设置,创建桌面图标与.py文件关联
6、PyCharm软件的使用
☆ 创建Python项目
什么是项目?其实我们在实际开发中,每次参与一个工作的开发都是一个项目的开发过程。所以使用PyCharm的第一件事就是学习Python项目的创建过程。
第一步:创建项目
第二步:设置项目路径,必须放在C盘以外的盘符(非常重要!!!)
配置完成后,单机Create创建Python项目。
☆ 新建文件与代码书写
如果将来要上传到服务器的文件,那么文件名切记不能使用中文。
编写Hello World
print('Hello World')☆ 运行代码
运行结果:
☆ 设置或更换Python解析器
打开File文件,找到Settings设置,如下图所示:更换Python解析器
☆ PyCharm软件本身设置
① 软件主题(软件未来的样式)
② 编码字体的设置
③ 代码字号的设置(文字大小)
打开File文件 => Settings设置,找到界面设置:
主题设置:
字体与字号设置:
字体设置:
字号设置:
☆ 打开项目与关闭项目
打开项目:本身项目已经存在了,我们直接打开。
选择项目目录(文件夹)即可,如下图所示:
① This Window => 覆盖当前项⽬,从⽽打开目标项目
② New Window => 在新窗⼝打开,则打开两次PyCharm,每个PyCharm负责一个项⽬
③ Attach => 把两个项目合并在一起,放在同一个窗口中
关闭项目:对已经运行项目进行关闭操作。
四、Python注释
1、注释的作用
首先强调一件事:Python代码 => Python解析器 => 机器语言,但是注释经过了Python的解释器并不会解析与执行。因为其主要就是进行代码的注释。
注释作用:==提高代码的阅读性==
在我们编写Python程序时,为了了提高程序的可读性,强烈建议大家为核心代码添加注释信息。
2、Python注释的基本语法
☆ 单行注释
单行注释,以"#"(Shift + 3)号开头,只能注释一行内容
# 注释内容示例代码:
第一种:代码行的上面
# 输出Hello World字符串 print('Hello World')第二种:放在代码的后面(代码后面保留2个空格)
print('Hello World') # 输出Hello World字符串☆ 多行注释
多行注释:可以同时注释多行代码或程序,常用于代码块的注释
基本语法:
""" 注释内容 第一行 第二行 第三行 """或
''' 注释内容 第一行 第二行 第三行 '''示例代码:
""" Hi, 大家好 我是黑马程序员的小伙伴 从今天开始,我们将一起学习Python这门语言 """ ''' Hi, 大家好 我是黑马程序员的小伙伴 从今天开始,我们将一起学习Python这门语言 ''' print('Hi, 大家好') print('我是黑马程序员的小伙伴') print('从今天开始,我们将一起学习Python这门语言')☆ PyCharm注释小技巧(快捷键)
在PyCharm中,我们可以使用Ctrl + /斜杠来对代码或程序进行快速注释。
五、PyCharm常用快捷键
1、代码提示
在PyCharm中,当我们输入Python关键字中的前2~3个字符,其会自动进行代码提示。这个时候,我们只需要按回车即可以快速的输入某个内容。
2、代码保存
编写代码时,一定要养成一个好的习惯,使用Ctrl + S快速对代码进行保存操作。
个人建议,当写完一行代码时,就按一次。
3、撤销与恢复
如果不小心删除了某行代码,这个时候我们可以快速按Ctrl + Z就可以快速进行恢复。每按一次就撤销一次,如果撤销多了,怎么办?
答:还可以通过Ctrl + Y进行恢复操作
六、Python中的变量(重点)
1、变量的学习目标(案例)
案例:实现两个变量的交换
1号杯:可乐
2号杯:牛奶
经过一系列Python操作以后
1号杯:牛奶
2号杯:可乐
2、引入变量的概念
什么是量:量是程序中的最小单元。
那什么是变量呢?
==① 变量是存储数据的容器==
==② 变量在程序运行过程中是可以发生改变的量==
==③ 变量存储的数据是临时的==
3、变量的作用(举个栗子)
淘宝注册案例:
① 写入用户名、密码
==② Python程序要接收用户名和密码(临时存储)==
③ 把刚才接收的用户名和密码永久的存储起来(数据库)
为了解决以上问题,Python开发了变量这样一个概念,可以把用户输入的一些信息,临时的保存起来,保存的这个容器就是Python变量。
4、变量的定义
基本语法:
变量名称 = 变量的值 注:等号的两边都要保留一个空格,其实Python中建议符号的两边尽量都要保留一个空格说明:在Python程序中,这个等号和日常生活中的等号不太一样,其有一个专业名词:赋值运算符,其读法:要从右向左读,把变量的值通过 = 赋值给左边的变量。
5、变量的命令规则
标识符命名规则是Python中定义变量名称时一种命名规范,具体如下:
==① 由数字、字母、下划线(_)组成==
==② 不能数字开头==
==③ 严格区分⼤小写==
==④ 不能使⽤内置关键字作为变量名称==
下划线 => Shift + -减号
举个栗子:
① abc、abc123、_abc、hello(合理)
② 123abc、@abc、abc-123(不合理)
③ _(下划线) => 请问这可以是一个变量名称么?答:可以
for _ in range(10): ...④ 变量abc和变量ABC是同一个变量么?答:不一样,这是两个完全不同的变量
⑤ 记不住33个关键字怎么办?答:借助于help()方法
>>> help('keywords')6、推荐变量的命名规则
① 变量命名一定要做到见名知义。
② 大驼峰:即每个单词首字母都大写,例如: MyName 。
③ 小驼峰:第二个(含)以后的单词首字母大写,例例如: myName 。
④ 下划线:例如: my_name 。
7、变量的定义与调用
在Python中,记住:变量一定要先定义,后使用,否则会报错。
定义:
name = 'itheima' address = '北京市顺义区京顺路99号'调用:
print(name) print(address) 或 print(name, address)8、变量的定义与使用常见问题
① 变量与字符串如何区别:
==在Python中,如果要赋值的内容添加了单引号或者双引号,其就是Python中的一种数据类型:叫做字符串(日常生活中的文本信息)==
② print打印变量时,喜欢为其添加引号
print(name) # 输出变量name对应的值 与 print('name') # 输出'name'这个字符串七、Python中变量的数据类型
1、为什么要学习数据类型
变量的定义非常的简单,但是很多小伙伴可能会想:变量除了存储这种字符类型的数据以外,还能存储其他类型的数据么?其实,在 Python中,我们为了应对不同的业务需求,也会把数据分为不同的类型,如下图所示:
面试题:请手写出Python中的7种数据类型?
答:数值类型、布尔类型、字符串类型、列表类型、元组类型、集合类型、字典类型
今天我们只需要了解前3种即可。
问题:如何判断一个变量到底是什么类型?
答:① 使用type(变量名称)方法,返回变量的数据类型 ② isinstance(变量名称,数据类型),只能返回True或False(真的还是假的)
2、数值类型
数值类型就是我们日常生活中的数字,数字又分为两种形式:整数 与 小数(带小数点)
整数类型:int类型
小数类型:float类型
案例1:定义一个人的信息,姓名:Tom、年龄18岁
name = 'Tom' age = 18 print(type(age))案例2:定义一个超市收银系统,写入一个名称:大白菜,价格:3.5
name = '大白菜' price = 3.5 print(type(price))3、布尔类型
布尔类型是与逻辑相关一种数据类型,只有两个值:True(真)与False(假)
案例1:手工定义一个flag变量,其值为True
flag = True print(flag) print(type(flag))其实在Python中,很多程序的返回结果也可以是True或False,比如isinstance()
num = 10 print(isinstance(num, int)) # True print(isinstance(num, bool)) # False4、字符串类型
在Python变量定义中,如果其赋值的内容是通过单引号或双引号引起来的内容就是字符串str类型。
msg = '这家伙很懒,什么都没有留下...' print(type(msg))5、其他类型(了解)
# 1、list列表类型 list1 = [10, 20, 30, 40] print(type(list1)) # 2、tuple元组类型 tuple1 = (10, 20, 30, 40) print(type(tuple1)) # 3、set集合类型:去重 set1 = {10, 20, 30} print(type(set1)) # 4、dict字典类型:查询、搜索 dict1 = {'name':'itheima', 'age':18} print(type(dict1))八、了解Python中的Bug
1、认识一下bug
所谓bug,就是程序中的错误。如果程序有错误,就需要咱们程序员来进行问题排查,及时纠正错误。
2、解决bug三步走
第一步:查看错误页面
第二步:看错误的行号
第三步:根据具体的错误,具体分析
3、PyCharm代码调试(重点)
Debug工具是PyCharm IDE中集成的专门用来调试程序的工具,在这里程序员可以查看程序的执行细节和流程,以方便我们快速找出程序的Bug!
Debug工具使⽤二步走:==① 打断点 ② Debug调试==
4、下断点
断点应该放在哪个位置:答:代码可能出错的代码段的第一行
5、Debug调试
6、单步调试
遇到小闪电图标就代表这一行,可能出错了。
九、Python中的格式化输出
1、格式化输出
目前为止,我们所有的输出都是直接通过print(变量名称)形式直接打印的。但是实际工作中,我们可能需要对变量的输出进行格式化操作(按照一定格式进行输出)。
2、百分号格式化输出
基本语法:
... print(变量名称) print('字符串%格式' % (变量名称)) print('字符串%格式 %格式 %格式' % (变量名称1, 变量名称2, 变量名称3))%格式常见形式如下:
格式符号 转换 ==%s== 字符串 ==%d== 有符号的十进制整数 ==%f== 浮点数 %c 字符 %u 无符号十进制整数 %o 八进制整数 %x 十六进制整数(小写ox) %X 十六进制整数(大写OX) %e 科学计数法(小写'e') %E 科学计数法(大写'E') %g %f和%e的简写 %G %f和%E的简写案例:定义两个变量name='itheima', age=18,按照如下格式进行输出:我的名字是itheima,今年18岁了。
案例:定义两个变量title='大白菜',price=3.5,按照如下格式进行输出:今天蔬菜特价了,大白菜只要3.5元/斤。
title = '大白菜' price = 3.5 # 格式化输出“今天蔬菜特价了,大白菜只要3.5元/斤。" print("今天蔬菜特价了,%s只要%.2f元/斤。" % (title, price))其实除了%f可以设置小数点位数以外,%d也可以填充序号。
案例:定义两个变量id=1,name='itheima',按照如下格式进行输出:姓名itheima,学号000001
id = 1 name = 'itheima' print("姓名%s,学号%06d" % (name, id))3、format方法格式化输出
基本语法:
... print('字符串{}'.format(变量名称1)) print('{}字符串{}'.format(变量名称1, 变量名称2))案例:定义两个变量,name='孙悟空',mobile='188xxxxxxxx',按照以下格式进行输出"姓名:孙悟空,联系方式:188xxxxxxxx"
name = '孙悟空' mobile = '188xxxxxxxx' print("姓名:{},联系方式:{}".format(name, mobile))4、format方法简写形式格式化输出(推荐)
在Python3.6以后版本,为了简化format输出操作,引入了一个简写形式:
name = '孙悟空' mobile = '188xxxxxxxx' print(f'姓名:{name},联系方式:{mobile}')5、格式化输出中的转义符号
在字符串中,如果出现了\t和\n,其代表的含义就是两个转义字符
\t :制表符,一个tab键(4个空格)的距离 \n :换行符案例:
print('*\t*\t*') print('hello\nworld')特别说明:==默认情况下,每个print()方法执行完毕后,都会输出一个\n换行符。如果不想让print()方法换行,可以添加一个end参数==
print('*', end='')十、Python中的标准输入
1、为什么需要输入
到目前为止,我们所有的程序都只能把数据输出给用户。但是实际工作中,我们经常输入获取用户的输入信息,如银行系统中的密码输入、淘宝中的用户登录验证。
2、input()输入方法
在Python中,如果想让Python程序接受用户的输入信息,可以使用input()方法
基本语法:
input()但是往往只有input()方法,其意义不大,我们还应该使用一个变量来临时接受用户的输入,已方便后期的操作。
变量名称 = input('提示信息:')案例:银行系统中的,输入密码的过程
password = input('请输入您的银行卡密码:') print(f'您输入的银行卡密码为:{password}')3、input()方法重要事项
记住:所有由input()方法获取的数据都是==“字符串”==类型
name = input('请输入您的姓名:') age = input('请输入您的年龄:') print(type(name)) # <class 'str'> print(type(age)) # <class 'str'>