Python基础篇(二):入门基础必备知识

news2024/12/24 21:03:06

Python基础篇(一):如何使用PyCharm创建第一个Python项目(包含tools)

入门基础必备知识

  • 1. 标识符
  • 2. 关键字
    • 2.1 关键字字典
  • 3. 引号
    • 3.1 表示字符串
    • 3.2 在字符串中使用引号
    • 3.3 创建多行字符串
    • 3.4 在注释中使用引号
  • 4. 编码
  • 5. 输入输出
    • 5.1 输入示例
    • 5.2 输出示例
    • 5.3 格式化输出
    • 5.4 文件输入输出
  • 6. 缩进
  • 7. 注释
    • 7.1 单行注释
    • 7.2 多行注释
  • 8. 数据类型
  • 9.常用的运算符及其示例
    • 9.1 运算符示例
    • 9.2 运算符的优先级

1. 标识符

在Python中,标识符是用来标识变量、函数、类等命名的名称。

Python标识符规则:

  • 标识符由字母、数字下划线组成。
  • 标识符不能以数字开头
  • 标识符区分大小写

示例:

name = "蔡徐坤"      # 变量名为name
age = 25            # 变量名为age
my_variable = 10    # 变量名为my_variable
total_count = 100   # 变量名为total_count
myFunction = ...    # 函数名为myFunction
MyClass = ...       # 类名为MyClass

注意事项:

  • 避免使用Python的关键字作为标识符,如ifforwhile等。
  • 标识符应具有描述性,见名知意!能够清晰地表达其所代表的内容。写java的时候最烦命名为int a, int b又不写注释的!
  • 建议使用小写字母和下划线的组合来命名变量和函数(遵循Python的命名约定)。
  • 在类名中通常使用驼峰命名法,即每个单词的首字母大写,无下划线。

总之,标识符是用来命名变量、函数和类的名称,在命名时需要遵循一定的规则和约定,以提高代码的可读性和可维护性。

2. 关键字

在Python中,关键字是被保留的特殊单词,具有特定的含义和功能,用于表示语法结构和操作。因此不能作为标识符来命名变量、函数或类。使用关键字作为标识符会导致语法错误。
Python的关键字列表示例:
以下是Python的所有关键字,按照表格形式展示,并标识其作用:

2.1 关键字字典

关键字作用
False表示布尔值False
None表示空值
True表示布尔值True
and逻辑与操作
as创建别名
assert断言条件是否为真
async声明异步函数
await暂停异步函数的执行,等待异步操作完成
break终止循环
class定义类
continue继续下一次循环
def定义函数
del删除对象
elif如果前面的条件不满足,尝试下一个条件
else如果前面的条件都不满足,则执行这个
except捕获异常
finally无论如何都会执行的代码块
for迭代循环
from从模块中导入特定内容
global声明全局变量
if条件判断
import导入模块
in判断元素是否在序列中
is比较对象是否相同
lambda创建匿名函数
nonlocal声明非局部变量
not逻辑非操作
or逻辑或操作
pass占位符,什么都不做
raise抛出异常
return返回函数结果
try尝试执行代码块
while循环执行代码块
with管理上下文
yield生成器函数返回值

3. 引号

在Python中,引号主要用于表示字符串(字符串字面值)。Python支持单引号(')和双引号(")两种引号的使用方式,还可以使用三引号(''')或三双引号(""")来创建多行字符串。使用引号能够方便地处理包含文本的数据和注释。
引号的作用如下:

3.1 表示字符串

引号用于创建包含文本的字符串。可以使用单引号或双引号来表示字符串,两者在Python中没有区别
示例:

name = 'caixukun'    # 单引号表示字符串
message = "喜欢唱跳rap篮球"   # 双引号表示字符串

3.2 在字符串中使用引号

如果字符串本身包含引号,可以使用一种类型的引号将其括起来,以避免冲突。
示例:

sentence = "cxk: '打篮球!'"   # 使用双引号包含包含单引号的字符串
quote = 'cxk, "a man!"'   # 使用单引号包含包含双引号的字符串

3.3 创建多行字符串

在Python中,可以使用三引号(‘’')或三双引号(“”")来创建多行字符串。
示例:

cxk_text= '''sing
jump
rap'''

3.4 在注释中使用引号

引号也可以在注释中使用,用于说明注释的内容。
示例:

# 这是一个注释,用于说明注释中时可以使用‘引号’的

4. 编码

编码的作用:

在处理文件读写和网络通信等操作时,需要根据实际情况选择合适的编码来确保正确的文本处理和数据传输。

在Python中,不同的版本使用不同的编码标准。下面是Python中各个版本常用的编码:

  • Python 2.x 默认使用ASCII编码,但可以通过在脚本文件中添加以下注释来指定其他编码:
 # -*- coding: encoding -*-
 
 #例如添加utf-8
 # # -*- coding: UTF-8 -*-
  • Python 3.x 默认使用UTF-8编码,可以处理各种语言的字符。

  • 在Python中,可以使用不同的编码进行文本的处理和转换。常见的编码包括:

    • UTF-8:可处理全球范围内的字符,是Python 3.x 默认编码。
    • ASCII:仅支持英文字母和常用符号。
    • Latin-1(ISO-8859-1):支持欧洲语言字符。
    • GBK(GB2312):适用于简体中文。
    • Big5:适用于繁体中文。
    • Unicode:提供全球范围内字符的标准编码。

5. 输入输出

在Python中,可以使用内置的input()函数获取用户的输入,并使用print()函数进行输出。下面是Python的输入输出示例:

5.1 输入示例

name = input("请输入您的姓名: ")
print("您好," + name + "!")

在示例中,input()函数用于获取用户输入的姓名,并将其保存到name变量中。然后,使用print()函数将欢迎消息输出到控制台
在这里插入图片描述

5.2 输出示例

age = 25
print("年龄:", age)

在上面的示例中,使用print()函数将字符串"年龄:"和变量age的值输出到控制台。
在这里插入图片描述

5.3 格式化输出

name = "John"
age = 30
print("姓名: {}, 年龄: {}".format(name, age))

在示例中,使用format()方法将变量的值格式化插入到字符串中,然后使用print()函数将格式化后的字符串输出。
在这里插入图片描述

5.4 文件输入输出

在示例中,使用open()函数打开文件,并使用不同的模式("w"表示写入,"r"表示读取)进行文件的输入输出操作。使用write()方法将内容写入文件,使用read()方法读取文件的内容,并使用print()函数输出读取的内容。

# 写入文件
with open("output.txt", "w") as f:
    f.write("Hello, world!")

在项目的目录下生成txt文件,文件内容如下:
在这里插入图片描述

# 读取文件
with open("output.txt", "r") as f:
    content = f.read()
    print(content)

在这里插入图片描述

6. 缩进

在Python中,缩进是一种结构化的语法规则,用于表示代码块的层次结构和逻辑关系。Python使用缩进来定义代码块,而不是使用大括号或关键字。

缩进规则如下:

  1. 使用空格或制表符进行缩进:

    • 推荐使用4个空格进行缩进,这是Python官方推荐的缩进方式。(java中就有tab和空格缩进之争,这里就乖乖用空格吧
    • 不推荐混合使用空格和制表符进行缩进,以避免不一致的缩进导致的错误。
  2. 缩进的层次表示代码块的嵌套关系:

    • 较深的缩进表示内层代码块。
    • 缩进相同的代码处于同一层次。

示例代码:

if condition:
    statement1     # 缩进表示属于if代码块的语句
    statement2     # 缩进表示属于if代码块的语句
    if nested_condition:
        nested_statement1   # 内层代码块的缩进更深
        nested_statement2   # 内层代码块的缩进更深
    statement3     # 缩进表示属于if代码块的语句
else:
    statement4     # 缩进表示属于else代码块的语句
    statement5     # 缩进表示属于else代码块的语句

在Python中,缩进是语法的一部分,缩进错误会导致语法错误或逻辑错误。因此,正确的缩进对于代码的执行和理解至关重要。在编辑器中使用一致的缩进方式,并遵循Python的缩进规则,可以帮助提高代码的可读性和可维护性。(写java的时候最烦xjb缩进的还有代码不格式化的)

7. 注释

注释的作用:(lz最烦不写注释,还是魔法值的代码)
注释在代码中起到重要的作用,有助于提高代码的可读性和可维护性。通过注释,可以向其他人或自己解释代码的目的、逻辑或特定要点。良好的注释习惯可以使代码更易于理解和修改。

在Python中,注释用于在代码中添加说明性文字,对代码进行解释、补充或标记。注释不会被解释器执行,它们只是对代码的说明。Python支持两种类型的注释:单行注释和多行注释

7.1 单行注释

  • 使用#符号表示单行注释。在#符号后面的所有内容都会被解释器忽略。
  • 示例:
    # 这是一个单行注释
    x = 5  # 这是一个带有注释的赋值语句
    

7.2 多行注释

  • 使用三个单引号(‘’')或三个双引号(“”")表示多行注释。可以在三引号之间添加多行文字作为注释。
  • 示例:
    '''
    这是一个多行注释。
    它可以跨越多行,提供详细的代码说明。
    '''
    ''''''
    这是一个多行注释。
    它可以跨越多行,提供详细的代码说明。
    ''''''
    

8. 数据类型

在Python中,有多种内置的数据类型,用于存储和操作不同种类的数据。下面是Python中常见的数据类型及其示例:

  1. 数字类型:

    • 整数(int):表示整数值,如x = 10
    • 浮点数(float):表示带有小数点的数值,如y = 3.14
    • 复数(complex):表示实部和虚部构成的复数,如z = 2 + 3j
  2. 布尔类型:

    • 布尔(bool):表示逻辑值,只有两个取值:True和False,如is_true = True
  3. 字符串类型:

    • 字符串(str):表示文本数据,使用单引号或双引号括起来,如message = "Hello, world!"
  4. 列表类型:

    • 列表(list):表示有序的可变数据序列,可以包含不同类型的元素,如numbers = [1, 2, 3, 4]
  5. 元组类型:

    • 元组(tuple):表示有序的不可变数据序列,可以包含不同类型的元素,如point = (x, y)
  6. 字典类型:

    • 字典(dict):表示键-值对的集合,用于存储具有相关性的数据,如person = {"name": "John", "age": 30}
  7. 集合类型:

    • 集合(set):表示唯一、无序的元素集合,用于去重或集合操作,如unique_numbers = {1, 2, 3, 4, 4}
  8. None类型:

    • None:表示空值或缺失值,如result = None

以上是Python中常见的数据类型。可以根据需要选择合适的数据类型来存储和操作数据。Python还提供了丰富的内置函数和方法,用于对不同类型的数据进行操作和处理。

9.常用的运算符及其示例

9.1 运算符示例

运算符描述示例
+加法x + y
-减法x - y
*乘法x * y
/除法x / y
%取模(取余)x % y
//整除(向下取整)x // y
**指数x ** y
==等于x == y
!=不等于x != y
>大于x > y
<小于x < y
>=大于等于x >= y
<=小于等于x <= y
and逻辑与x and y
or逻辑或x or y
not逻辑非not x
in成员运算符(属于)x in y
not in成员运算符(不属于)x not in y
is身份运算符(相同)x is y
is not身份运算符(不同)x is not y
=赋值x = y
+=加法赋值x += y
-=减法赋值x -= y
*=乘法赋值x *= y
/=除法赋值x /= y
%=取模赋值x %= y
//=整除赋值x //= y
**=指数赋值x **= y

9.2 运算符的优先级

以下是Python中常见运算符的优先级,按照从高到低的顺序排列:

运算符描述
()括号
**幂运算
* / % //乘法、除法、取模和整除
+ -加法和减法
< > <= >=比较运算符
== !=相等性运算符
is is not身份运算符
in not in成员运算符
not逻辑非
and逻辑与
or逻辑或
= += -= *= /= %= //= **=赋值运算符

这个表格按照优先级从高到低的顺序列出了常见的运算符。在表达式中,具有较高优先级的运算符会先于具有较低优先级的运算符进行计算。如果有相同优先级的运算符,通常按照从左到右的顺序计算。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

王道计算机网络学习笔记(3)——数据链路层

前言 文章中的内容来自B站王道考研计算机网络课程&#xff0c;想要完整学习的可以到B站官方看完整版。 三&#xff1a;数据链路层 3.1&#xff1a;数据链路层功能概述 结点&#xff1a;主机、路由器 链路&#xff1a;网络中两个结点之间的物理通道&#xff0c;链路的传输介…

PolarFormer:Multi-camera 3D Object Detection with Polar Transformer——论文笔记

参考代码&#xff1a;PolarFormer 1. 概述 介绍&#xff1a;在仓库RoboBEV中总结了现有的一些bev感知算法在不同输入情况下的鲁棒性&#xff0c;在这些感知算法中PolarFormer拥有较为不错的泛化性能。这个算法的思想是将之前由直角坐标系栅格化构建bev网格&#xff0c;转换到由…

Unity之透明度混合与ps的透明度混合计算结果不一致

一、问题 前段时间学习shader时发现了一个问题&#xff0c;一张纯红色透明度为128的图片叠加在一张纯绿色的图片上得出的结果与ps中的结果不一致。网上查找了ps中的透明混合的公式为 color A.rgb*A.alpha B.rgb*(1-A.alpha)。自己使用代码在unity中计算了一下结果总是不对。…

Python--异常处理

Python--异常处理 <font colorblue>一、异常<font colorblue>二、异常处理语句<font colorblue>1、try...except语句<font colorblue>2、try...except...else语句<font colorblue>3、try...except...finally语句<font colorblue>4、raise语…

leetcode354. 俄罗斯套娃信封问题(动态规划-java)

俄罗斯套娃信封问题 leetcode354. 俄罗斯套娃信封问题题目描述:解题思路代码演示 动态规划专题 leetcode354. 俄罗斯套娃信封问题 来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 链接&#xff1a;https://leetcode.cn/problems/russian-doll-envelopes 题目描述: 给你…

c++学习之模板

目录 一&#xff0c;模板的概述 二&#xff0c;函数模板 1.函数模板的定义 2.函数模板的注意事项 3.函数模板的重载 4.函数模板的局限性 三&#xff0c;类模板 1.类模板的概念 2.类模板定义方式 3.类模板的成员函数在类外实现 4.函数模板作为类模板的友元 5.在写程…

《大学英语4》期末考试复习(一)听力原文+答案速记

目录 Unit 1 Long conversation Passage 1 Unit 2 Long conversation Passage 1 Unit 3 Long conversation Passage 1 Unit 4 Long conversation Passage 1 Unit 5 Long conversation Passage 1 Unit 6 Long conversation Passage 1 Unit 7 Long conversat…

Java线程池小结

目录 一.什么是线程池 二.线程池的好处是什么 三.四种基本线程池及其使用 newCachedThreadPool newFixedThreadPool newScheduledThreadPool newSingleThreadExecutor 线程池的四种拒绝策略 选择一:AbortPolicy 选择二:CallerRunsPolicy 选择三:DiscardPolicy 选择四…

【Java】Java核心要点总结70

文章目录 1. volatile 如何保证变量的可⻅性&#xff1f;2. volatile 可以保证原⼦性么&#xff1f;3. synchronized 关键字4. synchronized 和 volatile 的区别5. synchronized 和 ReentrantLock 的区别 1. volatile 如何保证变量的可⻅性&#xff1f; 在Java中&#xff0c;使…

html实现多种风格的时间轴(附源码)

文章目录 1.设计来源1.1 对称风格时间轴1.2 横向风格时间轴1.3 回忆风格时间轴1.4 记事风格时间轴1.5 简易风格时间轴1.6 科技风格时间轴1.7 列表风格时间轴1.8 跑道风格时间轴1.9 人物风格时间轴1.10 容器风格时间轴1.11 沙滩风格时间轴1.12 双边风格时间轴1.13 图文风格时间轴…

【verilog基础】时钟无毛刺切换电路 Clock Glitch Free

文章目录 一、时钟切换电路:容易产生毛刺二、时钟无毛刺切换电路:在S端增加一些控制通路三、异步时钟无毛刺切换电路:使用同步电路解决亚稳态问题四、真题题目解答一、时钟切换电路:容易产生毛刺 1、在芯片运行时经常需要切换时钟源,通常的实现方式是:通过mux来选择不同的…

用试题这把“剑“帮你破除指针与数组之间的那些猫腻

作者主页&#xff1a;paper jie的博客_CSDN博客-C语言,算法详解领域博主 本文作者&#xff1a;大家好&#xff0c;我是paper jie&#xff0c;感谢你阅读本文&#xff0c;欢迎一建三连哦。 本文录入于《系统解析C语言》专栏&#xff0c;本专栏是针对于大学生&#xff0c;编程小白…

【linux】在Linux系统开机的时候卡在/dev/nvme0n1p1:clean / files / blocks界面进不去

一、问题背景 开机的时候没办法开机&#xff0c;一直停留在下面这个界面。 x86/cpu: SGX disabled by BIOS dev/nvme0n1p3:clean, 21118/30523392 fies, 122066176/122070272 blocks dev/nvme0n1p4:clean, 486125/61038592 fies,21657184/244140544b1ocks 试过网上的一些方法…

Ubuntu20.04+Intel SGX(一):环境安装与测试

文章目录 测试环境一、检查服务器是否支持SGX方法1&#xff1a;cpuid查看是否支持SGX方法2&#xff1a;test-sgx.c测试是否支持SGX验证是否支持SPS 二、启动 SGX 服务参考文档启动 SGX方法1&#xff1a;BIOS 启动SGX方法2&#xff1a;软启动 SGX检查SGX是否开启成功 三、安装 S…

C++在线五子棋对战(网页版)项目:环境搭建

Centos-7.6环境搭建 安装wget工具 wget工具是Linux中的一个下载文件的工具&#xff0c;支持通过 HTTP、HTTPS、FTP 三个最常见的TCP/IP协议 下载&#xff0c;并可以使用 HTTP 代理。可以使用以下命令进行下载&#xff1a; sudo yum install wget 下载后&#xff0c;可以使用以…

【Linux】CentOS7 设定本机当前地区时间为虚拟机时间的简单操作

目录 情景系统环境操作 情景 新安装的虚拟机时间和当前本地系统时间不一致&#xff0c;现在想要将虚拟机和本机地区的时间调节为一致。 系统环境 CentOS Linux 7 系统界面大致如此。 操作 点击虚拟机界面左上角的 Applications 选项&#xff0c; 选择System-Tools-- Sett…

【C++】C++关于异常的学习

文章目录 C语言传统的处理错误的方式一、异常的概念及用法二、自定义异常体系总结 C语言传统的处理错误的方式 传统的错误处理机制&#xff1a; 1. 终止程序&#xff0c;如 assert &#xff0c;缺陷&#xff1a;用户难以接受。如发生内存错误&#xff0c;除 0 错误时就会终止…

【Python】元组 创建 访问 切片 拼接 解包

2.3 元组 元组在输出时总是有括号的。 元组在输入时可以没有。 像字符串一样&#xff0c;元组是不可变的。 索引、切片以及一些方法很多与列表相似。 1&#xff09;定义 元组是一种不可变序列&#xff0c;它与列表类似&#xff0c;但元组的元素不能修改。元组中的元素可以是任意…

【Vuejs】1720- 详细聊一聊 Vue3 动态组件

&#x1f449; 「相关文章」 深入浅出 Vue3 自定义指令6 个你必须明白 Vue3 的 ref 和 reactive 问题初中级前端必须掌握的 10 个 Vue 优化技巧分享 15 个 Vue3 全家桶开发的避坑经验 动态组件[1]是 Vue3 中非常重要的一个组件类型&#xff0c;它可以让我们在不同的场景下灵活地…

Git远程仓库使用

说明&#xff1a;使用Git&#xff0c;可以实现版本控制和协作开发。需要协作开发&#xff0c;当然需要建立一个Git代码托管的平台。目前可以使用GitHub、码云、GitLab等&#xff0c;码云相当于国内的GitHub&#xff0c;在国内访问速度高于GitHub&#xff1b;而GitLab是搭建私服…