热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

1.《Python程序设计基础与应用》第1章Python概述

第1章Python概述1.1Python语言简介(1)Python是一门跨平台、开源、免费的解释型高级动态编程语言。(2࿰
第1章 Python概述

1.1 Python语言简介

(1)Python是一门跨平台、开源、免费的解释型高级动态编程语言。
(2)Python除了可以解释执行之外,Python还支持将源代码伪编译为字节码来优化程序提高加载速度并对源代码进行一定程度的保密,也支持使用py2exe、pyinstaller、cx_Freeze或其他类似工具将Pyhon程序极其所有依赖库打包成为各种平台上的可执行文件。
(3)Python支持命令式编程和函数式编程两种方式,完全支持面向对象程序设计。
(4)Python最重要的是拥有大量的扩展库。
(5)Python语言拥有“胶水”功能,可以把不同语言编写的程序融合到一起,实现无缝连接。

1.2 Python版本简介

(1)Python官方网站同时发行和维护着Pyhon2.x和Python3.x两个不同的系列的版本。(现如今,2.x不再维护)
(2)Pyhon2.x和Python3.x两个不同的系列的版本存在着许多不兼容:基本输入输出不同内置函数和标准库对象不同

1.3 Pyhon开发环境安装与配置

(1)Python开发环境:IDLE:官方安装包自带的Anaconda3PyCharmEclipsezwPython
(2)IDLE开发环境提供语法高亮(使用不同的颜色显示不同的语法元素),如:绿色显示字符串橙色显示Python关键字紫色显示内置函数
(3)IDLE开发环境还提供:交互式运行:一次只能执行一条语句(普通语句直接按回车运行、复合语句需要按两次回车运行)程序编写和运行简单的程序调试功能
(4)IDLE没有集成任何扩展库

直接在IDLE中回车运行并显示结果:
在这里插入图片描述
点击File->点击New File->编写python程序->键入F5,在IDLE中运行并显示结果:
在这里插入图片描述
在这里插入图片描述

1.4 Python编程规范

(1)Python对缩进是硬性要求的,缩进是为了体现代码的逻辑从属关系。(一个缩进是4个空格)
(2)每个import语句只导入一个模块,最好按标准库、扩展库、自定义库的顺序依次导入。
(3)最好在每个类、函数定义和一段完整的功能代码之后增加一个空行。
(4)最好在运算符两侧各增加一个空格,逗号后面增加一个空格。
(5)尽量不要写过长的代码,以保证可读性。若长度超过屏幕,最好使用续行符"\",或者使用圆括号把多行代码括起来表示是一条语句。
(6)复杂表达式中,要正确使用括号来明确隶属关系和顺序。
(7)两种注释:#单行注释,三引号多行注释。
(8)缩进结束,表示一个代码块的结束。
(9)同一个级别的代码块的缩进量必须相同。

1.5 扩展库安装方法

(1)在Python中,库或者模块是指一个包含函数定义、类定义或常量的Pyhon程序文件,一般不对这两个概念进行严格区分。
(2)标准库:math:数学模块random:与随机数以及随机化有关的模块datetime:日期时间模块collections:包含更多扩展性序列的模块urllib:与网页内容读取以及网页地址解析有关的模块
(3)扩展库/第三方库:openpyxl:用于读写excel文件python-docx:用于读写word文件numpy:用于数组计算与矩形计算scipy:用于科学计算pandas:用于数据分析matplotlib:用于数据可视化或科学计算可视化scrapy:爬虫框架shutil:用于系统运维pyopengl:用于计算机图形化编程pygame:用于游戏开发sklearn:用于机器学习tensorflow:用于深度学习
(4)Python自带的pip工具是管理扩展库的主要方式,支持python扩展库的安装、升级和卸载等操作。
(5)pip的使用方法:pip freeze [>requirments.txt] 列出已安装模块及其版本号pip install SomePackage[==version] 在线安装SomePackage模块的指定版本pip install SomePackage.whl 通过whl文件离线安装扩展库pip install package1 package2 ... 依次在线安装package1 package2等扩展模块pip install -r requirements.txt 安装requirments.txt文件中指定的扩展库pip install --upgrade SomePackage 升级SomePackage模块pip uninstall SomePackage[==version]卸载SomePackage模块
(6)pip指令存放在python安装目录的script文件夹下

1.6 标准库与扩展库中对象的导入与使用

(1)标准库和扩展库中的对象,需要先导入才能使用,导入方法如下:import 模块名 [as 别名]from 模块名 import 对象名 [as 别名]from 模块名 import *
(2)使用import 模块名 [as 别名]这种方式将模块导入以后,使用时候必须在对象之前加上模块名/别名为前缀,也就是必须以“模块名/别名.对象名”的这种形式进行访问。
(3)使用from 模块名 import 对象名 [as 别名]这种方式导入明确指定的对象,可以提高访问速度。
(4)使用from 模块名 import *这种方式依次导入模块中所有对象,简单粗暴,写起来比较省事。可以直接使用模块中的对象而不需要再使用模块名作为前缀。

1.7 Python程序的__name__属性

(1)Python程序文件,除了可以直接再开发环境或命令提示符环境中运行;还可以被作为模块导入并被使用其中的对象。
(2)通过Pyhon程序的__name__属性可以识别程序的使用方法:如果作为模块被导入,则其__name__属性的值被自带设置为模块名;如果作为程序被直接运行,则其__name__属性的值被自动设置为字符串"__nain__"。
(3)例子:
def main():if __name__ == '__main__':print('This program is run directly')elif __name__ == '__hello':print('This program is used as a module')main()

1.8 WEB安全总结

以下Python程序被pyinstaller打包成为可执行文件,在CTF/以及XP系统复现漏洞的时候中遇到过。

(1)Python除了可以解释执行之外,Python还支持将源代码伪编译为字节码来优化程序提高加载速度并对源代码进行一定程度的保密,也支持使用py2exe、pyinstaller、cx_Freeze或其他类似工具将Python程序极其所有依赖库打包成为各种平台上的可执行文件。

2021.09.17 (1.5h)


推荐阅读
  • 本人学习笔记,知识点均摘自于网络,用于学习和交流(如未注明出处,请提醒,将及时更正,谢谢)OS:我学习是为了上 ... [详细]
  • 企业数据应用挑战及元数据管理的重要性
    本文主要介绍了企业在日常经营管理过程中面临的数据应用挑战,包括数据找不到、数据读不懂、数据不可信等问题。针对这些挑战,通过元数据管理可以实现数据的可见、可懂、可用,帮助业务快速获取所需数据。文章提出了“灵魂”三问——元数据是什么、有什么用、又该怎么管,强调了元数据管理在企业数据治理中的基础和前提作用。 ... [详细]
  • 2022年的风口:你看不起的行业,真的很挣钱!
    本文介绍了2022年的风口,探讨了一份稳定的副业收入对于普通人增加收入的重要性,以及如何抓住风口来实现赚钱的目标。文章指出,拼命工作并不一定能让人有钱,而是需要顺应时代的方向。 ... [详细]
  • 如何使用代理服务器进行网页抓取?
    本文介绍了如何使用代理服务器进行网页抓取,并探讨了数据驱动对竞争优势的重要性。通过网页抓取,企业可以快速获取并分析大量与需求相关的数据,从而制定营销战略。同时,网页抓取还可以帮助电子商务公司在竞争对手的网站上下载数百页的有用数据,提高销售增长和毛利率。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • 近年来,大数据成为互联网世界的新宠儿,被列入阿里巴巴、谷歌等公司的战略规划中,也在政府报告中频繁提及。据《大数据人才报告》显示,目前全国大数据人才仅46万,未来3-5年将出现高达150万的人才缺口。根据领英报告,数据剖析人才供应指数最低,且跳槽速度最快。中国商业结合会数据剖析专业委员会统计显示,未来中国基础性数据剖析人才缺口将高达1400万。目前BAT企业中,60%以上的招聘职位都是针对大数据人才的。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • k8s+springboot+Eureka如何平滑上下线服务
    k8s+springboot+Eureka如何平滑上下线服务目录服务平滑上下线-k8s版本目录“上篇介绍了springboot+Euraka服务平滑上下线的方式,有部分小伙伴反馈k ... [详细]
  • Python入门后,想要从事自由职业可以做哪方面工作?1.爬虫很多人入门Python的必修课之一就是web开发和爬虫。但是这两项想要赚钱的话 ... [详细]
  • 零基础用Python打造Android字符串资源翻译器(五):增加图形化界面
    目录 ... [详细]
author-avatar
a734839433
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有