【Python |基础入门】入门必备知识(基础各方面全覆盖)

✨✨谢谢大家捧场,祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天开心哦!✨✨ 
🎈🎈作者主页: 🎈丠丠64-CSDN博客🎈


✨✨ 帅哥美女们,我们共同加油!一起进步!✨✨ 

目录

前言

标识符

引号

缩进和代码块

变量和类型

定义变量

类型

动态类型特性

注释

输入输出

控制台输出

控制台输入

运算符

语句

顺序语句

分支语句

if语句

空语句 pass

循环语句

while 循环

for 循环

函数

函数定义

 函数传参

函数返回值

列表与元组 

创建列表

访问列表

切片操作

新增元素

查找元素

删除元素

连接列表

关于元组

字典

创建字典

查找 key

新增/修改元素

删除元素 

遍历字典元素

 

取出所有 key 和 value

合法的 key 类型

文件操作

打开文件

关闭文件

写文件

读文件

关于中文的处理

使用上下文管理器

使用 import 导入模块

使用 pip


前言

大家在学习Python之前,建议先去主学一种主流语言,Python的使用就会很简单


标识符

标识符是编程时使用的名字,用于给变量、函数、语句块等命名(由字母、数字、下划线组成,不能以数字开头,区分大小写。)


引号

Python 可以使用引号(')、双引号(")、三引号(''' 或 """)来表示字符串,引号的开始与结束须类型相同,三引号可以由多行组成。


缩进和代码块

Python 不使用 {} 来控制类、函数、逻辑判断等,而是使用缩进,缩进的空格可变

Python 中使用缩进表示代码块 . 不同级别的缩进 , 程序的执行效果是不同的,所以就更注重了代码规范
在代码 1 , print("world") 有一级缩进 , 这个语句属于 if 内的代码块 , 意味着条件成立 , 才执行 , 条件
不成立 , 则不执行 .
在代码 2 , print("world") 没有缩进 , 这个语句是 if 外部的代码 , 不属于 if 内部的代码块 . 意味着条件无论是否成立, 都会执行 .


变量和类型

定义变量

在Python 中定义变量的时候,既不需要语句完了加分号,而且量的类型不需要显式指定, 而是在赋值的时候自动确定的,这一点很方便,也同时有很多利弊。


类型

我们拿使用 type 来查看一个变量的类型.

上述的a就是整形,b为浮点型,c,d都为字符串型 

  • int 表示的数据范围是没有上限的. 只要内存足够大, 理论上就可以表示无限大小的数据
  • 单引号构成的字符串和双引号构成的字符串, 没有区别. 'hello' "hello" 完全等价的.
  • Python 的小数只有 float 一种类型 , 没有 double 类型 . 表示双精度浮点数

 可以使用 len 函数来获取字符串的长度,同时可以使用 + 针对两个字符串进行拼接

c和d都为字符串,相加以后求长度,值为7

布尔类型呢是一个特殊的类型, 取值只有两种, True () False ()


动态类型特性

Python , 一个变量是什么类型 , 是可以在 " 程序运行 " 过程中发生变化的 . 这个特性称为 " 动态类型 " ,不像c与java中 定义后类型就是固定的了. 这种特性则称为 "静态类型"
我们发现当定义的变量发生变化的时候,他对应的变量类型也发生了变化

注释

Python 中单行注释使用 #,多行注释使用三个单引号(''')或三个双引号("""

快捷键选择Ctrl + / ,可以大量注释


输入输出

控制台输出

Python 输出使用 print(),内容加在括号中即可。

更多的时候 , 我们希望能够输出的内容是混合了字符串和变量的
使用 f 作为前缀的字符串 , 称为 f-string,里面可以使用 { } 来内嵌一个其他的变量 / 表达式

控制台输入

Python 提供了一个 input(),可以让用户输入字符串,并存放到一个变量里, input 的参数相当于一个提示信息,   也可以没有

input 的返回值就是字符串类型,这点很重要,所以要实现什么功能首先得先对应的类型转换
类似的 , 使用 float( ), bool( ), str( ) 等可以完成对应的类型转换

运算符

运算符都大差不大,我们这里来介绍有一点不一样

  •  / 中不能用 0 作为除数. 否则会 抛出异常
  • 整数 / 整数 结果可能是小数. 而不会截断
  • ** 是求乘方. 不光能算整数次方, 还能算小数次方
  • // 是取整除法(也叫地板除). 整数除以整数, 结果还是整数(舍弃小数部分, 并向下取整. 不是四舍五) 比如   7 //3  == 2 ; -7 // 3 == -3

如果关系符合, 则表达式返回 True. 如果关系不符合, 则表达式返回 False 

  • 关系运算符不光针对整数/浮点数进行比较, 还能针对字符串进行比较
  • 字符串比较大小, 规则是 "字典序”
  • 浮点数在计算机中的表示并不是精确的! 在计算过程中, 就容易出现非常小的误差(对于浮点数来说, 不要使用 == 判定相等. )

  • and 并且. 两侧操作数均为 True, 最终结果为 True. 否则为 False. (一假则假)
  • or 或者. 两侧操作数均为 False, 最终结果为 False. 否则为 True. (一真则真)
  • not 逻辑取反. 操作数本身为 True, 则返回 False. 本身为 False, 则返回 True

包括也可以连续判断

 赋值操作符

在Python中 = 赋值操作符相比于其他的语言有一些区别,可以连等,也可以同时赋值

连续赋值

多元赋值


语句

顺序语句

默认情况下 , Python 的代码执行顺序是按照从上到下的顺序 , 依次执行的 .

分支语句

能够表达 " 如果 ... 否则 ..." 这样的语义 . 这构成了计算机中基础的 逻辑判定

if语句

格式

if expression1 :
do_something1
elif expression2 :
do_something2
else :
do_something3
如果 expression1 值为 True, 则执行 do_something1;
如果 expression1 值为 False, 并且 expression2 True 则执行 do_something2;
如果 expression1 值为 False, 并且 expression2 False 则执行 do_something3
  • if 后面的条件表达式, 没有圆括号,  使用冒号作为结尾.
  • if / else 命中条件后要执行的 "语句块", 使用 缩进 (通常是 4 个空格或者 1 tab)来表示, 而不是 { }
  • 对于多条件分支, 不是写作 else if, 而是 elif (合体了).

空语句 pass

其中 pass 表示 空语句 , 并不会对程序的执行有任何影响 , 只是占个位置 , 保持 Python 语法格式符合要求.

循环语句

有些操作是需要反复执行的 . 这种就需要使用循环 .

while 循环

while 条件 :
    循环体
  • 条件为真, 则执行循环体代码.
  • 条件为假, 则结束循环.

for 循环

for循环与其他语音都有所差别

for 循环变量 in 可迭代对象 :
    循环体
 "可迭代对象 ", 指的是 " 内部包含多个元素 , 能一个一个把元素取出来的特殊变量 "
案例:eg.打印 10-1
rand 第一个第二个参数为左闭右开  [ 10 , 1),第三个参数为每次相比与上次的位置

函数

在Python中,函数与c与java有着相同的功能跟用法比如链式,嵌套,递归等等,当然有有着一些不同,这里我们介绍一下Python中函数不同的部分


函数定义

def 函数名 ( 形参列表 ):
    函数体
    return 返回值

在Python中函数必须先定义, 再使用,不然会报错


 函数传参

在Python中的传参的时候不需要去考虑传的数据,一个函数可以支持多种不同类型的参数,形参不必指定参数类型

在Python中的在形参的局部变量范围内如果想修改全局变量的话就要使用global关键字实现 

Python 中的函数 , 可以给形参指定默认值,带有默认值的参数, 可以在调用的时候不传参,此处 debug=False 即为参数默认值, 不指定第三个参数的时候 , 默认 debug 的取值即为 False

 带有默认值的参数需要放到没有默认值的参数的后面,不然会报错

 

一般默认情况下是按照形参的顺序 , 来依次传递实参的, 我们也可以通过 关键字参数 , 来调整这里的传参顺序
test(x=10, y=20) 这样的操作 , 即为 关键字参数

函数返回值

在Python中一个函数是可以一次返回多个返回值的. 使用 , 来分割多个返回值 ,其中的部分返回值, 可以使用 _ 来忽略不想要的返回值


列表与元组 

Python中用来表示批量表示/保存数据的方式,相当于其他语音中的数组,列表可变可修改,元组不可变不可修改


创建列表

这两种都是可以的

[ ] 表示一个空的列表;也可以使用list()创建

可以直接在 [  ] 内初始化

列表中存放的元素允许是不同的类型. (这一点和 C++ Java 差别较大)


访问列表

与数组相同,都是用 [ ] 用来索引访问,下标从0开始

这里得到了3

下标可以取负数. 表示 "倒数第几个元素"

这里得到了6

当然也不可以越界,超出访问返回会出现报错


切片操作

通过切片 , 则是一次取出一组连续的元素 , 相当于得到一个 子列表
使用 [x :y ] 的方式进行切片操作 ,下标为左闭右开,相当于[x,y)    
打印了下标从0到4的所有元素

省略后边界, 表示获取到列表末尾;省略前边界, 表示从列表开头获取;省略两个边界, 表示获取到整个列表.

切片操作还可以指定 "步长" , 也就是 "每访问一个元素后, 下标自增几步"

 

切片操作指定的步长还可以是负数 , 此时是从后往前进行取元素 . 表示 " 每访问一个元素之后 , 下标自减几步"
如果切片中填写的数字越界了 , 不会有负面效果 . 只会尽可能的把满足条件的元素过去到

新增元素

使用 append 方法 , 向列表末尾插入一个元素 ( 尾插 )
使用 insert 方法 , 向任意位置插入一个元素

append、insert这种就叫做方法,方法其实就是函数. 只不过函数是独立存在的, 而方法往往要依附于某个"对象"


查找元素

使用 in 操作符, 判定元素是否在列表中存在. 返回值是布尔类型

使用 index 方法, 查找元素在列表中的下标. 返回值是一个整数. 如果元素不存在, 则会抛出异常

下标为

 元素不存在抛出异常

 


删除元素

使用 pop 方法删除最末尾元素
pop 也能按照下标来删除元素
使用 remove 方法, 按照值删除元素

 

 


连接列表

使用 + 能够把两个列表拼接在一起, 此处的 + 结果会生成一个新的列表. 而不会影响到旧列表的内容
使用 extend 方法 , 相当于把一个列表拼接到另一个列表的后面, a.extend(b) , 是把 b 中的内容拼接到 a 的末尾. 不会修改 b, 但是会修改 a.

 


关于元组

元组的功能和列表相比 , 基本是一致的,元组使用 ( ) 来创建
元组不能修改里面的元素 , 列表则可以修改里面的元素,只支持读操作,不能支持写操作其他的地方与列表相同
另外 , 元组在 Python 中很多时候是默认的集合类型(返回多个值的返回值类型)

字典

字典是一种存储 键值对 的结构, 把键(key) 和值 (value) 进行一个一对一的映射 , 然后就可以根据键 , 快速找到值

创建字典

创建一个空的字典. 使用 { } 表示字典

也可以在创建的同时指定初始值 ,键值对之间使用 , 分割 , 键和值之间使用 : 分割 . ( 冒号后面推荐加一个空格 ).

查找 key

使用 in 可以判定 key 是否在 字典 中存在 . 返回布尔值
使用 [ ] 通过类似于取下标的方式 , 获取到元素的值 . 只不过此处的 " 下标 " key

如果 key 在字典中不存在, 则会抛出异常.


新增/修改元素

使用 [ ] 可以根据 key 来新增 / 修改 。value如果 key不 存在,则会创建一个键值对
如果 key 已经存在 , 对取下标操作赋值 , 即为修改键值对的值

删除元素 

使用 pop 方法根据 key 删除对应的键值对.

遍历字典元素

直接使用 for 循环能够获取到字典中的所有的 key, 进一步的就可以取出每个值了.

 


取出所有 key value

使用 keys 方法可以获取到字典中的所有的 key

使用 values 方法可以获取到字典中的所有 value

使用 items 方法可以获取到字典中所有的键值对
dict_values, dict_keys,dict_items这三个为特殊类型

合法的 key 类型

在Python中,所有的数据类型都可以是值,但是不是所有的类型都可以作为字典的 key, 字典本质上是一个 哈希表 , 哈希表的 key 要求是 " 可哈希的 ", 能够计算出哈希值的类型, 都可以作为字典的 key,所以专门有一个函数计算哈希值hash函数
而字典跟元组则计算不出来哈希值
不可变的(整形、浮点型、字符串等)就是可哈希,而可变的(字典、元组)就是不可哈希

文件操作

打开文件

使用内建函数 open 打开一个文件
  • 第一个参数是一个字符串, 表示要打开的文件路径
  • 第二个参数是一个字符串, 表示打开方式.  r 表示按照读方式打开. w 表示按照写方式打开. a表示追加写方式打开.
  • 如果打开文件成功, 返回一个文件对象. 后续的读写文件操作都是围绕这个文件对象展开
  • 如果打开文件失败 ( 比如路径指定的文件不存在 ), 就会抛出异常 .

关闭文件

使用 close 方法关闭已经打开的文件
使用完毕的文件要记得及时关闭,当一个程序打开文件超过上限以后,就会抛出异常
针对已经关闭的文件对象进行写操作 , 也会抛出异常

写文件

写文件 , 要使用写方式打开 , open 第二个参数设为 'w'
使用 write 方法写入文件
  • 如果是使用 'r' 方式打开文件, 则写入时会抛出异常
  • 使用 'w' 一旦打开文件成功, 就会清空文件原有的数据.
  • 使用 'a' 实现 "追加写", 此时原有内容不变, 写入的内容会存在于之前文件内容的末尾.

读文件

读文件内容需要使用 'r' 的方式打开文件
使用 read 方法完成读操作 . 参数表示 " 读取几个字符 "
使用 readlines 直接把文件整个内容读取出来 , 返回一个列表 . 每个元素即为一行 .

关于中文的处理

一般常用的汉字编码方式, 主要是 GBK UTF-8
必须要保证文件本身的编码方式 , Python 代码中读取文件使用的编码方式匹配
此时修改打开文件的代码 , open 方法加上 encoding 参数 , 显式的指定为和文本相同的字符集 , 问题即可解决.

使用上下文管理器

打开文件之后 , 是容易忘记关闭的 . Python 提供了 上下文管理器
打开就被监视起来了,会及时关闭文件

库分为两种

  • 标准库: Python 自带的库. 只要安装了 Python 就可以直接使用.
  • 第三方库: 其他人实现的库. 要想使用, 需要额外安装

使用 import 导入模块

import [ 模块名 ]

使用 import 可以导入标准库的一个 模块,以把这个外部的 .py 文件导入到当前 .py 文件中, 并执行其中的代码 


使用 pip

pip Python 内置的 包管理器 https://pypi.org/ , 来收集第三方库,
pip 在我们安装 Python 的时候就已经内置了 . 无需额外安装, pip 是一个可执行程序 , 就在 Python 的安装目录中,我们库在cmd中敲出pip查看

使用以下命令, 即可安装第三方库,详细如何可以去PYPI这个网站查找,相当于手机里面的应用商城,有着各种各样的第三方库


希望对你有用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/625075.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统运行级别

Linux系统运行级别:linux系统共有7个运行级别,不同的级别运行的程序和功能都是不一样的而linux系统默认是运行在一个标准级别上,系统运行级别文件/etc/inittab 运行级别0:所有进程被终止,机器将有序的停止,…

C语言学习【常量和C预处理器】

C语言学习【常量和C预处理器】 符号常量(symbolic constant) C预处理器可以用来定义常量 就像这样 #define TAXRATE 0.015/* 通用格式 末尾不加分号 */ /* 大写表示符号常量是 C 语言一贯的传统 */ #define NAME value编译程序时,程序中所有TAXRATE都会被替换成0.…

天锐绿盾|设计院图纸透明加密软件、制造业文件资料防止外泄

#图纸加密软件# 天锐绿盾是一家专注于数据安全解决方案的提供商,其产品主要为企业级用户设计,旨在保护敏感信息和知识产权免遭未经授权的访问或泄露。"天锐绿盾"的图纸透明加密软件和机械制造业文件资料防止外泄系统,是专为设计院…

Properties配置文件和源码

先对测试类进行get方法复写得到getReqType 判断caseinfo等于get时,就是get请求,反之就不是 这里的url和param都是xxx代替,如果直接写内容,每次都会请求 三目运算优化 为什么要用配置文件 test里时url,可以将ip和端口写在配置文…

Flink CDC 原理

简介 Flink CDC(Change Data Capture)是 Apache Flink 提供的一个变更数据捕获工具集。它可以监控数据库的变更,并将这些变更实时地以流的形式提供给下游系统,这些变更包括插入、更新和删除操作。 Flink CDC 适用于需要实时数据…

利用matplotlib和KNeighborsClassifier,进行DBSACN聚类算法

代码: # -*- coding: utf-8 -*- """ Created on Sat May 11 10:23:50 2024author: admin """ # 调用库 import numpy as np import matplotlib.pyplot as plt # 调用人工智能模型库 from sklearn.neighbors import KNeighborsClassi…

自定义el-select下拉菜单的内容以及数据回显的内容

最终的效果 下拉选项的自定义内容好实现&#xff0c;因为他有默认插槽&#xff0c;所以直接在el-option标签里面写自定义内容就可以实现 <el-selectref"seriesBorderTypeRef"class"series-border-type"change"changeSeriesBorderType"v-model…

如何轻松获得稳定的静态IP?

在当今互联网时代&#xff0c;静态IP地址对于许多领域至关重要。无论是个人用户还是企业&#xff0c;拥有一个稳定的静态IP地址都能够提供诸多便利。静态IP地址与动态IP地址相比&#xff0c;具有不变性和可追溯性&#xff0c;适用于需要长期稳定通信和追踪的场景。了解静态IP的…

【前端】打砖块游戏:实现细节介绍

打砖块游戏:实现细节介绍 在本文中,我将详细介绍如何使用HTML、CSS和JavaScript技术构建一个简单的打砖块游戏。我们将重点讨论游戏的三个核心技术方面:碰撞检测、画图和事件监听。 完整代码我放在:github可以直接拉取代码测试。 游戏概览 打砖块游戏中,玩家通过控制底…

[Cesium]Cesium基础学习——Primitive

Cesium开发高级篇 | 01空间数据可视化之Primitive - 知乎 Primitive由两部分组成&#xff1a;几何体&#xff08;Geometry&#xff09;和外观&#xff08;Appearance&#xff09;。几何体定义了几何类型、位置和颜色&#xff0c;例如三角形、多边形、折线、点、标签等&#xf…

Linux之·网络编程·I/O复用·select

系列文章目录 文章目录 前言一、概述1.1 介绍IO复用的概念和作用1.1.1 I/O复用具体使用的场景1.1.2 I/O复用常用函数 二、select函数的重要性和用途2.1 基本的select函数2.2 如何使用FD_SET、FD_CLR等宏来设置和清除文件描述符集合2.3 select()函数函数整体使用框架&#xff1a…

被动防护不如主动出击

自网络的诞生以来&#xff0c;攻击威胁事件不断涌现&#xff0c;网络攻防对抗已然成为信息时代背景下的一场无硝烟的战争。然而&#xff0c;传统的网络防御技术&#xff0c;如防火墙和入侵检测技术&#xff0c;往往局限于一种被动的敌暗我明的防御模式&#xff0c;面对攻击者无…

CSS实现渐变色

渐变色分为线性渐变和径向渐变。 线性渐变linear-gradient(方向, 颜色1, 颜色2, … ,颜色n)径向渐变radial-gradient(颜色1 覆盖区域大小, 颜色2 覆盖区域大小, … ) 线性渐变的方向可以为&#xff1a; ​ 1、一个方向值时&#xff1a; to bottom 表示从上边到下边渐变 ​ 2、…

GO语言核心30讲 实战与应用 (WaitGroup和Once,context,Pool,Map,字符编码,string包,bytes包)

原站地址&#xff1a;Go语言核心36讲_Golang_Go语言-极客时间 一、sync.WaitGroup和sync.Once 1. sync.WaitGroup 比通道更加适合实现一对多的 goroutine 协作流程。 2. WaitGroup类型有三个指针方法&#xff1a;Wait、Add和Done&#xff0c;以及内部有一个计数器。 (1) Wa…

《控制系统实验与综合设计》自控第二次(含程序和题目)

实验五 二阶系统的瞬态响应 一、实验完成任务 1、测试在不同阻尼比的条件下单位阶跃响应曲线&#xff0c;并进行其他动态性能指标测量。 2、通过调节开环增益得到相应K值&#xff0c;并进行其他动态性能指标测量。 3、在阻尼比一定时&#xff0c;测试角频率不同时的单位阶跃…

Service Worker的生命周期和全局对象和API

Service Worker的生命周期和全局对象和API 当我们注册了Service Worker后&#xff0c;它会经历生命周期的各个阶段&#xff0c;同时会触发相应的事件。整个生命周期包括了&#xff1a;installing --> installed --> activating --> activated --> redundant。当Se…

深度剖析进程概念与进程状态

文章目录 1. 前言2. 什么是进程2.1 进程概念2.2 进程描述——PCB 3. 进程的一些基本操作3.1 查看进程3.2 结束进程3.3 通过系统调用获取进程标示符3.4 通过系统调用创建子进程 4. 进程状态4.1 普适的操作系统层面4.2 具体Linux操作系统层面 5. 两种特殊的进程5.1 僵尸进程5.2 孤…

每日OJ题_贪心算法四⑧_力扣767. 重构字符串

目录 力扣767. 重构字符串 解析代码 力扣767. 重构字符串 767. 重构字符串 难度 中等 给定一个字符串 s &#xff0c;检查是否能重新排布其中的字母&#xff0c;使得两相邻的字符不同。 返回 s 的任意可能的重新排列。若不可行&#xff0c;返回空字符串 "" 。 …

【Java基础】枚举类的方法及应用

如何实现让一个类有固定个数的对象 手动封装构造方法&#xff08;private&#xff09; → 创建静态对象 → final修饰静态对象&#xff0c;使其成为常量 class Season { //枚举类public final static Season SPRING new Season();public final static Season SUMMER new Se…

Redis的集群模式——Java全栈知识(20)

1、主从模式 Redis 支持主从模式的集群搭建&#xff0c;这是 Redis 提供的最简单的集群模式搭建方案&#xff0c;目的是解决单点服务器宕机的问题。当单点服务器发生故障的时候保证 Redis 正常运行。 主从模式主要是将集群中的 Redis 节点分为主节点和从节点。然后读和写发生在…