当前位置: 首页 > news >正文

初识Python

目录

    • 初识Python
      • 1.Python简介
        • Python的优缺点
        • Python的应用领域
      • 2.安装Python解释器
        • Windows环境
        • Linux环境
        • macOS环境
      • 3.运行Python程序
        • 确认Python的版本
        • 编写Python源代码
        • 运行程序
        • 代码中的注释
      • 4.Python开发工具
        • IDLE - 自带的集成开发工具
        • IPython - 更好的交互式编程工具
        • Sublime Text - 高级文本编辑器
      • 5.练习

初识Python

1.Python简介

Python的优缺点

Python的优点很多,简单的可以总结为以下几点。

  1. 简单明了,学习曲线低,比很多编程语言都容易上手。
  2. 开放源代码,拥有强大的社区和生态圈,尤其是在数据分析和机器学习领域。
  3. 解释型语言,天生具有平台可移植性,代码可以工作于不同的操作系统。
  4. 对两种主流的编程范式(面向对象编程和函数式编程)都提供了支持。
  5. 代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。

Python的缺点主要集中在以下几点。

  1. 执行效率稍低,对执行效率要求高的部分可以由其他语言(如:C、C++)编写。
  2. 代码无法加密,但是现在很多公司都不销售卖软件而是销售服务,这个问题会被弱化。
  3. 在开发时可以选择的框架太多(如Web框架就有100多个),有选择的地方就有错误。

Python的应用领域

目前Python在Web应用后端开发、云基础设施建设、DevOps、网络数据采集(爬虫)、自动化测试、数据分析、机器学习等领域都有着广泛的应用。

2.安装Python解释器

想要开始Python编程之旅,首先得在自己使用的计算机上安装Python解释器环境,下面将以安装官方的Python解释器为例,讲解如何在不同的操作系统上安装Python环境。官方的Python解释器是用C语言实现的,也是使用最为广泛的Python解释器,通常称之为CPython。除此之外,Python解释器还有Java语言实现的Jython、C#语言实现的IronPython以及PyPy、Brython、Pyston等版本,有兴趣的读者可以自行了解。

Windows环境

可以在Python官方网站下载到Python的Windows安装程序(exe文件),需要注意的是如果在Windows 7环境下安装Python 3.x,需要先安装Service Pack 1补丁包(可以通过一些工具软件自动安装系统补丁的功能来安装),安装过程建议勾选“Add Python 3.x to PATH”(将Python 3.x添加到PATH环境变量)并选择自定义安装,在设置“Optional Features”界面最好将“pip”、“tcl/tk”、“Python test suite”等项全部勾选上。
强烈建议选择自定义的安装路径并保证路径中没有中文。安装完成会看到“Setup was successful”的提示。如果稍后运行Python程序时,出现因为缺失一些动态链接库文件而导致Python解释器无法工作的问题,可以按照下面的方法加以解决。

Linux环境

Linux环境自带了Python 2.x版本,但是如果要更新到3.x的版本,可以在Python官网下载Python的源代码并通过源代码构建安装的方式进行安装,具体的步骤如下所示(以CentOS为例)。

  1. 安装依赖库(因为没有这些依赖库可能在源代码构件安装时因为缺失底层依赖库而失败)。
yum -y install wget gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
  1. 下载Python源代码并解压缩到指定目录。
wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tar.xz
xz -d Python-3.7.6.tar.xz
tar -xvf Python-3.7.6.tar
  1. 切换至Python源代码目录并执行下面的命令进行配置和安装。
cd Python-3.7.6
./configure --prefix=/usr/local/python37 --enable-optimizations
make && make install
  1. 修改用户主目录下名为.bash_profile的文件,配置PATH环境变量并使其生效。
cd ~
vim .bash_profile
# ... 此处省略上面的代码 ...export PATH=$PATH:/usr/local/python37/bin# ... 此处省略下面的代码 ...
  1. 激活环境变量。
source .bash_profile

macOS环境

macOS也自带了Python 2.x版本,可以通过Python的官网提供的安装文件(pkg文件)安装Python 3.x的版本。默认安装完成后,可以通过在终端执行python命令来启动2.x版本的Python解释器,启动3.x版本的Python解释器需要执行python3命令。

3.运行Python程序

确认Python的版本

可以Windows的命令行提示符中键入下面的命令。

python --version

在Linux或macOS系统的终端中键入下面的命令。

python3 --version

当然也可以先输入pythonpython3进入交互式环境,再执行以下的代码检查Python的版本。

import sysprint(sys.version_info)
print(sys.version)

编写Python源代码

可以用文本编辑工具(推荐使用Sublime、Visual Studio Code等高级文本编辑工具)编写Python源代码并用py作为后缀名保存该文件,代码内容如下所示。

print('hello, world!')

运行程序

切换到源代码所在的目录并执行下面的命令,看看屏幕上是否输出了"hello, world!"。

python hello.py

python3 hello.py

代码中的注释

注释是编程语言的一个重要组成部分,用于在源代码中解释代码的作用从而增强程序的可读性和可维护性,当然也可以将源代码中不需要参与运行的代码段通过注释来去掉,这一点在调试程序的时候经常用到。注释在随源代码进入预处理器或编译时会被移除,不会在目标代码中保留也不会影响程序的执行结果。

  1. 单行注释 - 以#和空格开头的部分
  2. 多行注释 - 三个引号开头,三个引号结尾
"""
第一个Python程序 - hello, world!
向伟大的Dennis M. Ritchie先生致敬Version: 0.1
Author: 骆昊
"""
print('hello, world!')
# print("你好, 世界!")

4.Python开发工具

IDLE - 自带的集成开发工具

IDLE是安装Python环境时自带的集成开发工具,如下图所示。但是由于IDLE的用户体验并不是那么好所以很少在实际开发中被采用。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e3cDvB9b-1677828067813)(./res/python-idle.png)]

IPython - 更好的交互式编程工具

IPython是一种基于Python的交互式解释器。相较于原生的Python交互式环境,IPython提供了更为强大的编辑和交互功能。可以通过Python的包管理工具pip安装IPython,具体的操作如下所示。

pip install ipython

pip3 install ipython

安装成功后,可以通过下面的ipython命令启动IPython,如下图所示。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2DUK8IWe-1677828067814)(./res/python-ipython.png)]

Sublime Text - 高级文本编辑器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XXat8kPl-1677828067815)(./res/python-sublime.png)]

  • 首先可以通过官网下载安装程序安装Sublime Text 3或Sublime Text 2。

  • 安装包管理工具。

    1. 通过快捷键Ctrl+`或者在View菜单中选择Show Console打开控制台,输入下面的代码。
    • Sublime 3
    import  urllib.request,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();urllib.request.install_opener(urllib.request.build_opener(urllib.request.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib.request.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())
    
    • Sublime 2
    import  urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp)ifnotos.path.exists(ipp)elseNone;urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read());print('Please restart Sublime Text to finish installation')
    
    1. 在浏览器中输入 https://sublime.wbond.net/Package%20Control.sublime-package 下载包管理工具的安装包,并找到安装Sublime目录下名为"Installed Packages"的目录,把刚才下载的文件放到这个文件加下,然后重启Sublime Text就搞定了。
  • 安装插件。通过Preference菜单的Package Control或快捷键Ctrl+Shift+P打开命令面板,在面板中输入Install Package就可以找到安装插件的工具,然后再查找需要的插件。我们推荐大家安装以下几个插件:

    • SublimeCodeIntel - 代码自动补全工具插件。
    • Emmet - 前端开发代码模板插件。
    • Git - 版本控制工具插件。
    • Python PEP8 Autoformat - PEP8规范自动格式化插件。
    • ConvertToUTF8 - 将本地编码转换为UTF-8。

说明:Visual Studio Code可能是更好的选择,它是免费的并提供了更为完整和强大的功能,有兴趣的读者可以自行研究。

5.练习

  1. 在Python交互式环境中输入下面的代码并查看结果。

    print('hello, world!')
    

点击下载代码文件

  1. 学习使用turtle在屏幕上绘制图形。

    说明:turtle是Python内置的一个非常有趣的模块,特别适合对计算机程序设计进行初体验的小伙伴,它最早是Logo语言的一部分,Logo语言是Wally Feurzig和Seymour Papert在1966发明的编程语言。

    import turtleturtle.pensize(4)
    turtle.pencolor('red')turtle.forward(100)
    turtle.right(90)
    turtle.forward(100)
    turtle.right(90)
    turtle.forward(100)
    turtle.right(90)
    turtle.forward(100)turtle.mainloop()
    

点击下载代码文件(绘制国旗和小猪佩奇)

http://www.lryc.cn/news/27621.html

相关文章:

  • tmux终端复用软件
  • IO详解(文件,流对象,一些练习)
  • SpringCloud全家桶— — 【1】eureka、ribbon、nacos、feign、gateway
  • 【线程安全篇】
  • 错误:EfficientDet网络出现“No boxes to NMS“并且mAP:0.0的解决方案
  • python的opencv操作记录13——区域生长及分水岭算法
  • 一文看懂网上下单的手机流量卡为什么归属都是随机的!
  • python Pytest生成alluer测试报告的完整教程
  • 4-spring篇
  • 提升 Web 应用程序的性能:如何使用 JavaScript 编写缓存服务
  • 供应商绩效管理指南:挑战、考核指标与管理工具
  • 干货文稿|详解深度半监督学习
  • 信箱|邮箱系统
  • JS数组拓展
  • 一道很考验数据结构与算法的功底的笔试题:用JAVA设计一个缓存结构
  • (10)C#传智:命名空间、String/StringBuilder、指针、继承New(第10天)
  • 基于Jetson Tx2 Nx的Qt、树莓派等ARM64架构的Ptorch及torchvision的安装
  • MySQL存储引擎详解及对比和选择
  • 【推拉框-手风琴】vue3实现手风琴效果的组件
  • 滑动窗口最大值:单调队列
  • 负载均衡算法
  • C语言数组二维数组
  • 7年测试工程师,裸辞掉17K的工作,想跳槽找更好的,还是太高估自己了....
  • 企业为什么需要做APP安全评估?
  • 重回利润增长,涪陵榨菜为何能跑赢周期?
  • 这6个高清图片素材库,马住,马住~
  • 绝对零基础的C语言科班作业(期末模拟考试)
  • 注解开发定义bean
  • 剑指 Offer 19. 正则表达式匹配
  • CSS——学成在线案例