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

python入门基础篇(一)

[复制链接]

3

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2024-9-6 19:18:35 | 显示全部楼层 |阅读模式
基础篇Python基础安装与配置Python环境理解Python解释器第一个Python程序:"Hello,World!"基础语法注释与文档字符串变量与数据类型数字类型:整数、浮点数、复数字符串布尔值None值运算符算术运算符比较运算符逻辑运算符赋值运算符位运算符Python是一种高级编程语言,因其简洁易读的语法和强大的标准库而广受欢迎。Python广泛应用于Web开发、数据分析、人工智能、科学计算、自动化等领域。它具有以下特点:解释型语言:无需编译,直接运行代码。动态类型:变量无需声明类型,类型在运行时确定。强大的标准库:内置了大量实用的模块和包。面向对象:支持面向对象编程,也支持函数式编程。跨平台:代码可在多种操作系统上运行。按编译方式分类,可以将编程语言分为编译型语言、解释型语言和混合型语言。每种编译方式有其独特的特性和适用场景。编译型语言定义:编译型语言在运行之前需要通过编译器将源代码转换为机器码(或中间代码),然后运行生成的可执行文件。特点:性能高:由于编译后生成的是直接可以在机器上执行的代码,运行速度通常较快。错误检查:编译过程会进行语法和类型检查,能够在编译阶段发现大部分错误。生成可执行文件:编译后会生成独立的可执行文件,不需要依赖编译器或解释器。例子:C:编译成机器码,适用于系统编程和嵌入式开发。C++:编译成机器码,适用于高性能应用和游戏开发。Go:编译成机器码,适用于云计算和微服务。Rust:编译成机器码,注重内存安全和并发性。解释型语言定义:解释型语言在运行时由解释器逐行解释执行,不需要事先编译成机器码。特点:便于调试:由于代码是逐行执行的,调试时可以立即看到每一行代码的执行效果。平台无关性:源代码可以在任何支持解释器的平台上运行。动态性:通常支持动态类型系统,类型检查在运行时进行。例子:Python:广泛应用于数据分析、Web开发和自动化任务。JavaScript:主要用于Web前端开发。Ruby:常用于Web开发,尤其是RubyonRails框架。PHP:主要用于服务器端Web开发。混合型语言定义:混合型语言结合了编译型和解释型语言的特点,通常先将源代码编译成中间代码(如字节码),然后由虚拟机解释执行中间代码。特点:跨平台:通过虚拟机实现跨平台运行,编译后的中间代码可以在不同平台上的虚拟机中执行。优化与性能:虚拟机可以进行运行时优化,提升执行效率。便携性:中间代码与平台无关,具有良好的移植性。例子:Java:源代码编译成字节码,由Java虚拟机(JVM)执行,广泛应用于企业级应用开发和Android应用开发。C#:源代码编译成中间语言(IL),由.NET运行时(CLR)执行,主要用于Windows应用和Web开发。Python(部分实现):如PyPy解释器,将Python代码编译成中间字节码,然后执行。总结编译型语言:如C、C++、Go、Rust,通常性能高,适合高性能和系统级开发。解释型语言:如Python、JavaScript、Ruby、PHP,调试方便,适合快速开发和动态需求。混合型语言:如Java、C#,兼具编译和解释的优点,具有跨平台和运行时优化的特点。注:每种编程语言没有高下强弱之分,重点在于使用场景!Python基础安装与配置Python环境win系统安装python可去官网下载,具体过程此处不做过多描述,网上教程很多。使用pycharm作为集成开发环境,可去官网下载理解Python解释器Python解释器是用来执行Python代码的程序。它读取Python源代码文件,将其转换为机器能够理解的字节码,然后在虚拟机上执行。这种过程使得Python成为一种解释型语言。常见的Python解释器有:CPython:最常用、最标准的Python解释器,由Python官方维护。大多数Python代码都是在+CPython上运行的。PyPy:一个高性能的Python解释器,使用JIT(即时编译)技术,可以显著提高代码的运行速度。Jython:Python解释器的Java实现,可以将Python代码编译成Java字节码并在JVM上运行。IronPython:Python解释器的.NET实现,能够与.NET框架无缝集成。MicroPython:精简版的Python解释器,专为嵌入式系统设计,适用于微控制器和小型设备。第一个Python程序:“Hello,World!”print是Python中的一个内置函数,用于在控制台输出文本或其他类型的内容。它是Python编程中最常用的函数之一,主要用于调试和显示程序的输出print("HelloWorld!")#仪式感12print基本语法print(*objects,sep='',end='\n',file=sys.stdout,flush=False)1*objects:一个或多个要打印的对象。多个对象之间用逗号分隔。sep:用于分隔多个对象的字符串,默认为一个空格’'。end:在输出的末尾添加的字符串,默认为换行符‘\n’。file:输出的目标文件,默认为sys.stdout,即控制台。flush:是否立即将内容输出到文件,默认为False。CMD示例;输出多个对象PSC:\Users\huhy>pythonPython3.10.11(tags/v3.10.11:7d4cc5a,Apr52023,00:38:17)[MSCv.192964bit(AMD64)]onwin32Type"help","copyright","credits"or"license"formoreinformation.>>>print("Hello","world",123)Helloworld12312345自定义分隔符;注意加上换行符,不然如下所示>>>print("Hello","world",sep="。;")Hello。;world>>>123自定义结束符>>>print("Hello",end="!!!\n")Hello!!!>>>print("Hello",end="!!!")Hello!!!>>>1234输出到文件;在当前目录下创建一个output.txt文件,并将“Hello,world!”写入其中,这里使用pycharm方便展示withopen('output.txt','w')asf:print("Hello,world!",file=f)12使用注意事项print函数可以打印任意类型的对象,包括字符串、数字、列表、字典等print函数会自动调用每个对象的str方法来获取其字符串表示当打印多个对象时,它们之间会自动插入sep指定的分隔符,默认是一个空格基础语法Python使用缩进来表示代码块,不同的缩进级别表示不同的逻辑层次,常见的缩进方式有4个空格或者一个Tab注释与文档字符串单行注释:用于解释代码,编译器会忽略它们#这是一个注释1多行注释:使用三个单引号‘’’或三个双引号“”"'''这是一个多行注释可以跨越多行'''1234内嵌注释:放在代码行尾x=5#这是一个内嵌注释1文档字符串:用于为模块、类、函数和方法编写文档,可以使用三个单引号‘’’或三个双引号“”"defexample():"""这是一个文档字符串示例"""passprint(example.__doc__)12345变量与数据类型变量是存储数据的命名位置,不需要显式声明。赋值语句会创建变量变量命名规则变量名只能包含字母(a-z,A-Z)、数字(0-9)和下划线_变量名不能以数字开头Python中的变量名是大小写敏感的。即,variable和Variable是两个不同的变量不要使用Python的保留字和关键字作为变量名。Python有一些内置的保留字,如if,else,while,for,def,class,return等,这些保留字具有特殊意义,不能用作变量名数据类型数字类型:包括整数、浮点数和复数。字符串:字符的序列。布尔值:True或False。None:表示“没有值”或“空值”。数字类型:整数、浮点数、复数整数(int);没有小数部分的数字x=101浮点数(float);有小数部分的数字y=3.141复数(complex);有实部和虚部的数字z=2+3j1字符串字符串是字符的序列,可以使用单引号、双引号或三引号括起来s1='Hello's2="World"s3='''Thisisamultilinestring'''1234字符串支持多种操作,如拼接、重复、切片等#拼接s=s1+""+s2#"HelloWorld"#重复s=s1*3#"HelloHelloHello"#切片s=s1[1:3]#"el"12345678布尔值布尔值只有两个:True和False,用于逻辑操作a=Trueb=False12None值None是一个特殊的常量,表示“没有值”或“空值”n=None1运算符运算符用于执行操作。常见的运算符有;算术运算符算术运算符加法+减法-乘法*除法/取余%幂运算**取整除//x=5y=2print(x+y)#7print(x-y)#3print(x*y)#10print(x/y)#2.5print(x%y)#1print(x**y)#25print(x//y)#2123456789比较运算符比较运算符等于==不等于!=大于>小于=小于等于y)#Trueprint(x=y)#Trueprint(x>;右移操作会将数的二进制表示右移指定的位数,左边用符号位(正数用0,负数用1)填充,每右移一位相当于除以2(取整)x=5#二进制0101y=3#二进制0011print(x&y)#0001=>1print(x|y)#0111=>7print(x^y)#0110=>6print(~x)#1010=>-6print(x<< 1) # 1010 =>10print(x>>1)#0010=>212345678下一篇数据结构
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-10 13:59 , Processed in 0.461642 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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