【Python语言】Python编程基础

一、简介

本次分享一个学习网站牛客网python刷题网站
![在这里插入图片描述](https://img-blog.csdnimg.cn/4cc430429f694a9c91b165165a07e1fc.png

Python语言由荷兰人Guido Van Rossum于1989年发明,1991年发布第一个公开发行版;Python是机器学习领域主流语言;Python2.x已经是遗产,Python3.x是这个语言的现在和未来。是一种高级通用脚本编程语言 编译型语言,如C、C++、C#等,源程序代码必须由编译器转换成机器目标代码,直接运行这个可执行文件,不再需要源代码和编译器。解释型语言,如Python、MATLAB、Java Script等,解释器对源程序逐行解释并执行,即运行时需要源代码和解释器。

1.Python解释器

Python解释器在首次执行py源程序时,会把源程序转换成字节码,字节码的执行速度比源代码执行速度快很多,并且与平台无关。当再次执行该源程序时,解释器会自动加载字节码并对字节码进行解释执行。解释器会自动检查源程序与字节码的时间戳,若发现不一致,会再次将源程序转换为字节码。
Python并没有独立的编译系统,只是带有一些编译特征,仍旧是对字节码进行逐条解释和执行。

在这里插入图片描述

2.特点

(1)语法简洁

实现相同功能,Python语言的代码行数仅相当于其它语言的1/10~1/5。

(2)与平台无关

可以在任何安装解释器的计算机环境中无修改运行

(3)粘性扩展

常被称为“胶水语言”
具有优异的扩展性,可以集成C、C++、Java等语言编写的代码,通过接口和函数库等方式将它们“粘起来”。常见的一种应用情形是,先使用Python快速生成程序的原型(甚至是程序的最终界面),然后对其中有特别要求的部分采用更合适的语言改写。例如对于运行速度要求很高的部分,可利用c/c++重写并封装成Python可以调用的扩展类库。

(4)开源理念

对于高级程序员,Python语言开源的解释器和函数库具有强大的吸引力,更重要地,Python语言倡导的开源软件理念为该语言的发展奠定了坚实的群众基础。

(5)通用灵活

可用于编写各领域的应用程序。

(6)强制可读

Python语言通过强制缩进(类似文章段落的首行空格)来体现语句间的逻辑关系,显著提高了程序的可读性和可维护性

(7)支持中文

(8)模式多样

尽管Python3.x解释器内部采用面向对象方式实现,但Python语法层面却同时支持面向过程和面向对象两种编程方式。

(9)第三方库资源丰富

已形成欣欣向荣的Python机器学习生态圈。

二、语法

1.注释

单行注释:#
多行注释:三重引号(单或双引号)
在这里插入图片描述

2.语句结束

倾向于通过换行来识别语句的结束
也支持分号作为语句结束标识。如果一行书写多条语句,则需要添加分号区别这些语句。

3.标识符:变量、函数、对象等。

1.标识符的第1个字符必须是字母或下划线
2.其他字符可由字母、下划线、或数字组成,不建议使用中文字符
3.标识符长度任意test_data,test_data_1,y,,正确; 1test,1_test错误
4.标识符是大小写敏感的
5.标识符不能与Python关键字重名。(help(“keywords”))
6.一般少用下划线开头,因为系统约定,_xxx表示类中的保护变量名,__xxx表示类中的私有变量名,__xxx__系统定义的标识符。

三、数据类型

1.数字型

(1) 整数(int):不用担心位数不够而导致溢出
(2)浮点数(float):3.14,-0.28,1.392E9, 1.392e9
(3)布尔值(bool):True,False
(4)复数(complex):1+2i,1+2j

2.字符串(str)

 使用成对的单引号、双引号括起来构成单行字符串,
 使用成对的三重引号(单引号或双引  号)括起来,构成多行字符串。

3.常量

 数字、字符串、布尔值、空值等,例如2,-10086,3.5, “Python” ,True、False,None
 Python中没有命名常量,不能给常量起一个名字

4.变量

 Python的变量不需要声明, 其数据类型由所赋的值来决定
 不同类型的数字型数据运算时,会自动的进行类型转换:
             bool<int<float<complex
 自动的类型转换,仅存在于数字型数据之间

四、数据类型转换函数

在这里插入图片描述
例如:
在这里插入图片描述

int、float、complex是类名,a2实际上是整数类的实例化对象,
d实际上是访问复数对象c的imag属性或数据成员

五、运算符

1.算数运算符

在这里插入图片描述

2.赋值运算符

在这里插入图片描述

(1)连续赋值

连续赋值:a=b=c=1

(2)多元赋值

多元赋值:(x,y,z)=(1,2,“Python”),x,y,z=1,2,“Python”

3.比较运算符

在这里插入图片描述

4.逻辑运算符

在这里插入图片描述

5.字符串运算符

在这里插入图片描述

6.位运算符

在这里插入图片描述位运算符:对整数的二进制位进行操作

7.成员运算符

在这里插入图片描述

六、组合数据类型

1.Python语言中组合数据类型:元组、列表、字典、集合

(1)元组、列表、字符串为序列类型。
元素有顺序,可重复,通过方括号和下标(索引)访问元素。序列类型的元素索引采用正向递增或反向递减序号。通用操作符和函数有12个,常用的有:①sn或ns,将序列s复制n次;②s[i],单个索引返回序列第i个元素;③s[i:j],切片,返回第i到j-1个元素;④s[i:j:k],步进切片,返回第i到j-1个元素以k为步进;⑤len(s)、min(s)、max(s)
(2)字典为映射类型,每个元素是一个键值对,元素没有顺序,不能重复,通过方括号和键来访问对应值。键key常采用数字或字符串,值value可以是任意类型。

(1)元组

元组(tuple [ˈtʌpl] )是只读的序列类型,元素类型可不同,初始化后元组元素不能重新赋值。采用逗号和圆括号(圆括号在不混淆语义的情况下可省略)表示。在表达固定数据项、函数多返回值、多变量赋值、循环遍历等情况十分有用。

在这里插入图片描述

(2)列表

列表(list)是序列类型,元素类型可不同,长度和内容可变。
在这里插入图片描述

(3)字典

在这里插入图片描述

七、分支

1.条件分支

关键字if、else、elif;每个条件判断(可以省略括号)以冒号结尾;通过空格缩进来区分代码块。

(1)单分支和二分支

在这里插入图片描述

(2)多分支

在这里插入图片描述

八、循环

1.遍历循环

从可迭代对象中逐一提取元素放在循环变量中并执行循环体
for <循环变量> in <可迭代对象>:
<循环体>

在这里插入图片描述

range函数产生整数范围:range(3)返回02;range(1,4)返回13;range(0,6,2)返回0,2,4;range(6,0,-2)返回6,4,2。
range对象是惰性对象,无法直接显示。内置函数zip可展开惰性对象,还可以把多个列表对象的元素依次配对成元组。

在这里插入图片描述

2.条件循环

while <条件>:
<循环体>

在这里插入图片描述
循环结构有两个保留字break和continue,break用来跳出其所在for或while循环,continue用来结束当前当次循环。

九、函数

1.定义和调用

(1)定义

参数可以是零个、1个或多个,没有参数时也要保留圆括号,多个参数之间用逗号分隔;形参排列顺序是:一般参数(只有形参名)、可选参数(形参名=缺省值)、可变参数(*形参名)。
返回值可以是零个、1个或多个,多个返回值用逗号分隔并以元组形式返回,无返回值时可以没有return语句。
函数调用时,一般参数必须给定实参值;默认采用按形参顺序传递实参,且可变参数只能按位置传递;为增强可读性,还可以按形参名称传递实参,参数顺序可任意。若混用,则按名称传递者需在按位置传递者

(2)调用

1.方法一
在这里插入图片描述

2.方法二
在这里插入图片描述

十、类

1.自定义Python类的父类一般为object,可以进行多重继承;类的成员包括函数成员(或称方法)和数据成员(或称属性)。
2.定义成员函数时,第一个参数必须是self,可使用前缀self.调用属性或其它成员函数;
3.在对类进行实例化生成一个对象时,会自动调用构造函数进行初始化,构造函数的名字是__init__,init前后有两个下划线,没有返回值;可省略
4.在清除对象时,系统自动调用析构函数,回收和释放对象所占用的资源它的名字是__del__。可以省略。
5.所有成员函数和属性默认是公开的(即可以通过对象调用),如果要设置为私有,则在名字前添加两个下划线。 使用del 对象名,可以删除对象。

例:
在这里插入图片描述

十一、小结

万物皆可python 后期我准备分享8.10篇python专题分享,会扩展一些机器学习方向知识,欢迎各位小伙伴来支持。
欢迎各位小伙伴一起来学习牛客python学习

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:点我我会动 设计师:我叫白小胖 返回首页
评论 56

打赏作者

跳楼梯企鹅

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值