找回密码
 会员注册
查看: 40|回复: 0

第一节初识python

[复制链接]

2万

主题

0

回帖

6万

积分

超级版主

积分
64122
发表于 2024-9-12 21:58:46 | 显示全部楼层 |阅读模式
目录一、Python背景以及介绍二、Python开发环境搭建2.1Python是解释型语言2.2python版本差别2.2.1语法差异2.2.2标准库差异2.2.3功能差异2.2.4性能差异2.2.5兼容性2.3常用的pythonIDE2.3.1PyCharm版本2.3.2安装PyCharm和Python2.3.3自动环境搭建三、第一个python程序及数据类型3.1第一个python程序3.2python的数值类型3.3python的字符串类型3.4python中变量,关键字,标识符概念3.5python的注释四、python的输入和输出一、Python背景以及介绍        ython是一种面向对象的解释型计算机程序设计语言,由荷兰人GuidovanRossum在1989年设计,并于1991年发布了其第一个公开发行版。Python开发者的核心理念是“用一种方法,最好只有一种方法来做一件事”。在设计Python语言时,他们倾向于拒绝复杂的语法,而是选择那些明确、直观且几乎无歧义的语法。在日常应用中,Python展现出了以下显著特点:语法简洁清晰,易于阅读和编写。强制缩进,使得代码结构更加清晰,减少了出错的可能性。解释性语言,无需编译即可直接运行,开发效率高。面向对象,支持面向对象编程范式。拥有丰富的库和强大的第三方支持,可以快速开发各种应用程序。被誉为“胶水语言”,能够轻松地将其他语言编写的模块集成在一起。        ython的设计哲学强调优雅、明确和简单。这种设计哲学使得Python成为许多领域的首选语言,包括安全、数据分析、人工智能等。        学习Python具有多重优势。首先,Python可以方便地实现各种有趣且实用的程序,如网络爬虫,用于收集和分析数据。其次,许多安全软件使用Python作为扩展脚本语言,学习Python可以帮助你更好地理解这些软件的工作原理。此外,许多黑客工具也是用Python编写的,学习Python将使你能够更加熟练地利用这些工具。二、Python开发环境搭建2.1Python是解释型语言        ython是一种解释型语言。这意味着Python代码在运行时是由解释器逐行读取并执行的,而不是像编译型语言那样先编译成机器码再执行。具体来说,Python解释器的工作流程如下:词法分析:解释器首先将源代码分解成一个个的词法单元(tokens)。语法分析:然后,这些词法单元被组织成一个抽象语法树(AbstractSyntaxTree,AST)。编译:接下来,AST被编译成字节码(bytecode),这是一种与特定硬件平台无关的中间表示形式。解释执行:最后,Python虚拟机(PythonVirtualMachine,PVM)执行这些字节码。        虽然Python代码在运行前会被编译成字节码,但这个编译步骤是透明的,对用户来说,Python代码是直接被解释执行的。这也是为什么Python被称为解释型语言的原因。解释型语言的优点包括:跨平台性:字节码可以在任何安装了相应Python解释器的平台上运行。开发速度快:无需编译步骤,可以快速测试和修改代码。        然而,解释型语言通常运行速度比编译型语言慢,因为解释器在运行时需要实时翻译字节码。不过,像PyPy这样的解释器使用了即时编译(JIT)技术来提高执行速度,从而在一定程度上弥补了这一缺点。2.2python版本差别        我们来比较之前常用的python2.x和python3.x的区别        ython2.x和Python3.x之间存在许多显著的差异,这些差异主要体现在语法、标准库、功能和性能等方面。以下是一些主要的区别:2.2.1语法差异打印语句:Python2.x:使用print语句,例如print"Hello,World!"。Python3.x:使用print()函数,例如print("Hello,World!")。整数除法:Python2.x:整数除法会截断小数部分,例如3/2结果为1。Python3.x:整数除法会返回浮点数,例如3/2结果为1.5。使用//进行整数除法。Unicode字符串:Python2.x:字符串默认为ASCII字符串,Unicode字符串需要前缀u,例如u"Hello,World!"。Python3.x:字符串默认为Unicode字符串,例如"Hello,World!"。异常处理:Python2.x:使用exceptException,e:语法。Python3.x:使用exceptExceptionase:语法。迭代器:Python2.x:range()返回列表,xrange()返回迭代器。Python3.x:range()返回迭代器,移除了xrange()。2.2.2标准库差异模块重命名:Python3.x对许多标准库模块进行了重命名和重组,例如ConfigParser模块在Python3.x中变成了configparser。移除的模块:Python3.x移除了一些在Python2.x中存在的模块,例如tkinter.tix和tkinter.ttk。2.2.3功能差异类型提示:Python3.x引入了类型提示(TypeHints),可以使用typing模块进行静态类型检查。矩阵乘法运算符:Python3.x引入了矩阵乘法运算符@。异步编程:Python3.x引入了async和await关键字,用于异步编程。2.2.4性能差异Python3.x在某些情况下可能比Python2.x有更好的性能,尤其是在处理Unicode字符串和某些内置函数时。2.2.5兼容性Python2.x和Python3.x之间的代码通常不兼容,需要进行一定的修改才能从一个版本迁移到另一个版本。        总结来说,Python2.x和Python3.x之间的差异主要体现在语法、标准库、功能和性能等方面。由于Python2.x系列已经不再受到官方支持,建议新项目和现有项目迁移到Python3.x系列。2.3常用的pythonIDE        python常用的集成开发环境有PyCharm,VisualStudioCode(VSCode),或微软的VisualStudio201x等等软件。这里我们主要介绍PyCharm。        yCharm确实是一个非常受欢迎的Python集成开发环境(IDE),由JetBrains开发。它提供了丰富的功能,包括代码自动完成、调试、版本控制集成、代码分析等,非常适合专业开发者和学习者使用。2.3.1PyCharm版本PyCharm有多个版本:CommunityEdition(社区版):免费、开源,适合个人开发者和小型项目。ProfessionalEdition(专业版):付费,提供更多高级功能,如Web开发支持、数据库工具、远程开发功能等,适合专业开发者和企业使用。EducationalEdition(教育版):免费,专为教学和学习设计,包含了一些教学工具和插件。2.3.2安装PyCharm和Python下载PyCharm:访问JetBrains官网https://www.jetbrains.com/pycharm安装PyCharm:下载完成后,运行安装程序,按照提示进行安装。在安装过程中,可以选择是否创建桌面快捷方式、关联文件类型等。配置Python解释器:安装完成后,打开PyCharm。首次启动时,PyCharm会提示你配置Python解释器。你可以选择已经安装的Python版本,或者从PyCharm中下载并安装新的Python解释器。如果你已经安装了Python3.5,可以在配置解释器时选择它。2.3.3自动环境搭建        yCharm确实可以简化环境搭建过程,但它不会自动安装Python解释器。你需要手动选择或安装Python解释器。以下是具体步骤:打开PyCharm:创建一个新项目或打开一个现有项目。配置Python解释器:进入File->Settings(Windows)或PyCharm->references(macOS)。在左侧导航栏中选择Project:->ythonInterpreter。点击齿轮图标,选择Add...。选择SystemInterpreter,然后浏览到你安装的Python3.5解释器路径,或者选择NewEnvironment创建一个新的虚拟环境。完成配置:配置完成后,PyCharm会自动识别并使用你选择的Python解释器。        总结来说,PyCharm是一个功能强大的IDE,适合各种规模的Python项目。虽然它不会自动安装Python解释器,但可以简化解释器的配置和管理过程。如果你是学习者或编写小型项目,使用PyCharm的社区版或教育版是一个不错的选择。三、第一个python程序及数据类型3.1第一个python程序        在Python中,确实没有像C/C++/Java那样的`main`函数作为程序的明确入口点。Python程序的执行是基于模块的,每个模块(文件)都可以独立执行,也可以作为模块被其他模块导入。###Python的执行机制1.**直接执行**:当你直接运行一个Python脚本时,Python解释器会从文件的顶部开始逐行执行代码。2.**模块导入**:当你导入一个模块时,Python解释器也会执行该模块中的代码,但有一些特殊处理。###缩进和代码块        ython使用缩进来定义代码块,这是Python语法的一个核心特点。没有缩进的代码(顶层代码)会在模块被导入或直接执行时自动执行。###模拟`main`函数        为了模拟其他语言中的`main`函数,Python程序员通常会使用以下模式:defmain():print('Helloworld')if__name__=="__main__":main()###解释-`defmain():`定义了一个名为`main`的函数。-`if__name__=="__main__":`是一个条件语句,检查当前模块是否是直接运行的。 -`__name__`是一个特殊变量,当模块被直接运行时,其值为`"__main__"`。 -当模块被导入时,`__name__`的值为模块的名称。-`main()`调用`main`函数。这种模式的好处是:-保持代码结构清晰,便于维护。-允许模块既可以独立运行,也可以作为库被其他模块导入而不执行不必要的代码。###示例以下是一个简单的Python脚本示例:print('Thisisatop-levelstatementandwillalwaysbeexecuted.')defmain():print('Helloworld')if__name__=="__main__":main()当你直接运行这个脚本时,输出会是:Thisisatop-levelstatementandwillalwaysbeexecuted.Helloworld        而当你导入这个模块时,只有顶层语句会被执行,`main`函数不会被调用。        总结来说,Python的执行机制确实与其他语言不同,但通过使用`if__name__=="__main__":`模式,可以有效地模拟`main`函数的行为。3.2python的数值类型Python的数值类型主要包括以下几种:1.整数描述:表示整数值,可以是正数、负数或零。示例:1,42,-7,0。特点:没有大小限制,可以非常大。2.浮点数(float)描述:表示小数值,包括小数点和指数形式。示例:3.14,-0.001,2.0,1.23e-4。特点:精度有限,通常为双精度浮点数(64位)。3.复数(complex)描述:表示复数值,包含实部和虚部。示例:1+2j,3.5-4.2j。特点:虚部用j或J表示。3.3python的字符串类型        在Python中,字符和字符串类型都是通过str类型来表示的。Python没有单独的字符类型,而是将单个字符也视为长度为1的字符串。以下是关于Python字符串类型的一些详细信息:单引号:'Hello,World!'双引号:"Hello,World!"三引号:'''Hello,World!'''或"""Hello,World!""",用于多行字符串。3.4python中变量,关键字,标识符概念        在Python中,变量、关键字和标识符是编程语言的基本组成部分,它们各自有不同的用途和规则。###变量(Variables)        变量是用于存储数据的命名位置。在Python中,变量不需要声明类型,可以直接赋值。赋值操作使用`=`符号。-**示例**:x=10name="Alice"-**特点**: -变量名必须以字母或下划线开头,后面可以跟字母、数字或下划线。 -变量名区分大小写。 -变量在使用前必须赋值。###关键字(Keywords)        关键字是Python语言预留的特殊标识符,具有特定的含义和用途。它们不能用作变量名、函数名或其他标识符。-**常见关键字**: -`if`,`else`,`elif` -`for`,`while` -`def`,`class` -`return`,`break`,`continue` -`True`,`False`,`None` -`import`,`from`,`as` -`try`,`except`,`finally` -`raise`,`assert` -`global`,`nonlocal` -`lambda` -`with`,`yield`-**特点**: -关键字不能用作变量名或其他标识符。 -关键字在Python中具有特殊的语法意义。###标识符(Identifiers)        标识符是用户定义的名称,用于标识变量、函数、类、模块或其他对象。标识符的命名规则如下:-**规则**: -标识符必须以字母(A-Z或a-z)或下划线(_)开头。 -标识符可以包含字母、数字(0-9)和下划线。 -标识符区分大小写。 -标识符不能是关键字。-**示例**:my_variable=10MyClass="Class"_private_var="Private"-**命名约定**: -变量和函数名通常使用小写字母和下划线(snake_case)。 -类名通常使用大写字母开头的驼峰命名法(CamelCase)。 -常量通常使用大写字母和下划线(CAPITAL_SNAKE_CASE)。###示例代码#变量x=10name="Alice"#关键字#if=5#错误,if是关键字#标识符my_variable=10MyClass="Class"_private_var="Private"print(x,name,my_variable,MyClass,_private_var)3.5python的注释        在Python中,注释是用于解释代码的文本,它们不会被Python解释器执行。注释是提高代码可读性和可维护性的重要工具。Python支持两种类型的注释:单行注释和多行注释。单行注释        单行注释以#符号开头,从#开始到该行末尾的所有内容都被视为注释。示例:#这是一个单行注释x=10#这也是一个单行注释,解释变量x的值多行注释        多行注释通常使用三引号('''或""")来实现。虽然Python没有专门的多行注释语法,但三引号字符串如果不在任何函数或类中,且不被赋值给变量,则会被解释器忽略,因此可以作为多行注释使用。示例:'''这是一个多行注释。可以跨越多行,解释更复杂的逻辑。'''x=10"""这也是一个多行注释。使用双引号的三引号字符串。"""y=20四、python的输入和输出        在Python中,输入和输出是程序与用户或外部系统交互的基本方式。Python提供了多种内置函数和方法来处理输入和输出。###输入(Input)        ython提供了`input()`函数来从用户那里获取输入。`input()`函数会暂停程序并等待用户输入,用户输入的内容会被当作字符串返回。-**示例**:name=input("请输入你的名字:")print("你好,",name)-**特点**: -`input()`函数返回的字符串可以通过类型转换函数(如`int()`,`float()`)转换为其他类型。 -提示信息可以作为参数传递给`input()`函数。###输出(Output)Python提供了`print()`函数来输出信息到控制台。`print()`函数可以输出字符串、数字、变量等。-**示例**:print("Hello,World!")x=10print("变量x的值是:",x)-**特点**: -`print()`函数可以接受多个参数,参数之间会自动用空格分隔。 -`print()`函数默认在输出结束后换行,可以使用`end`参数改变这一行为。 -`print()`函数可以使用格式化字符串(如f-string、`str.format()`、`%`操作符)来格式化输出。###格式化输出        Python提供了多种方式来格式化输出,使输出更加灵活和美观。-**f-string**:name="Alice"age=30print(f"我的名字是{name},我今年{age}岁。")-**str.format()**:name="Alice"age=30print("我的名字是{},我今年{}岁。".format(name,age))-**%操作符**:name="Alice"age=30print("我的名字是%s,我今年%d岁。"%(name,age))###示例代码#输入name=input("请输入你的名字:")age=int(input("请输入你的年龄:"))#输出print("你好,",name)print("你今年",age,"岁。")#格式化输出print(f"我的名字是{name},我今年{age}岁。")print("我的名字是{},我今年{}岁。".format(name,age))print("我的名字是%s,我今年%d岁。"%(name,age))
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2024-12-26 13:05 , Processed in 1.814906 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表