Python学习篇:Python基础知识(三)

目录

1 Python保留字

2 注释

 3 行与缩进

​编辑4 多行语句

5 输入和输出

6 变量

7 数据类型

8 类型转换

9 表达式

10 运算符


1 Python保留字

Python保留字(也称为关键字)是Python编程语言中预定义的、具有特殊含义的标识符。这些保留字不能用作变量名、函数名或其他标识符的名称。以下是Python 3中的保留字列表:

['False', 'None', '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']

 请注意,保留字列表可能会随着Python版本的更新而发生变化,因此Python的标准库提供了一个keyword模块,可以输出当前版本的所有关键字,运行下列代码即可。

# 导入Python的keyword模块
import keyword # keyword.kwlist是一个列表,包含了所有的Python保留字,print函数会输出这个列表的内容到控制台
print(keyword.kwlist) 

2 注释

单行注释以 # 开头,示例如下:

# 第一个注释
print("Hello Word!!!")  # 第二个注释

多行注释可以用多个 # 号,一行一行进行注释,也可以用 ''' 和 """,示例如下: 

ps:注释用到''' 和 """是英文字符!!!

# 第一个注释
# 第二个注释'''
第三个注释
第四个注释
'''"""
第五个注释
第六个注释
"""
print("Hello Word!!!")

执行以上代码,输出结果均为:Hello Word!!!(注释不影响)

ps:注释对代码执行没有任何直接影响。注释是代码中的解释性文本,用于为代码提供额外的信息,帮助开发者和其他读者理解代码的功能、逻辑和目的。注释不会被Python解释器或编译器执行,它们仅作为代码的一部分存在,用于提高代码的可读性和可维护性!!!

 3 行与缩进

在Python中,缩进是非常重要的,因为它用于定义代码块的结构。Python没有像其他语言(如C、Java等)中的大括号 { } 来明确标记代码块的开始和结束,而是依赖于缩进来表示代码块,示例如下:

if True:# 这个条件语句下的代码块应该缩进print("Condition is True")
if False:# 这个条件语句下的代码块应该缩进print("Condition is False")

以下代码最后一行语句缩进数的空格数不一致,会导致运行错误,执行后会出现类似以下错误:

IndentationError: unindent does not match any outer indentation level


4 多行语句

在Python中,你可以在行的末尾使用反斜杠 (\) 来指示语句将在下一行继续。但是,这种方式并不常用,因为它可能会降低代码的可读性。它主要用于那些Python解释器无法自动识别为跨越多行的语句,比如字符串或长表达式,示例如下:

s = "这是一个很长的字符串,\
它跨越了多行"

当你在括号(圆括号 (), 方括号 [], 花括号 {})中编写代码时,Python会自动将多行视为一个单一的语句,而无需使用反斜杠。这是处理长列表、元组、字典和函数调用时常用的方法,示例如下:

my_list = ["apple","banana","cherry",
]my_func(arg1,arg2,arg3,
)

5 输入和输出

输出函数print(),在前面我们已经用过来输出Hello World,语法就是:

print(要输出的内容)

输入函数是 input(),功能是接收用户输入的内容,语法是:

input(输出的内容)

举例:接收用户输入的姓名,随之打印欢迎用户

n = input("请输入姓名:")	#把输入内容赋给n,用 n 接收一下
print("欢迎" + n + "!")	#打印n

上面章节也讲到过,在Python里,“#” 表示注释,“#”后面的东西不会被执行。代码运行之后首先出现了“请输入姓名:”,然后随意输入,比如输入Michael Lee,执行结果:

成功接收用户输入的内容并打印出来。

6 变量

变量可以理解为一个名字,在Python中,变量是用于存储数据值的标识符(名称)。变量允许我们存储和操作数据,而不必每次都直接引用数据本身。Python是一种动态类型的语言,这意味着变量的类型在运行时可以自动改变,取决于我们赋给它的值。

变量命名规则

  • 变量名必须是一个有效的标识符:这意味着它必须以字母(a-z, A-Z)或下划线(_)开头,后面可以跟任意数量的字母、数字或下划线。
  • 变量名不能是Python的关键字(即Python保留字):例如,class, for, while, if等。
  • 变量名应该具有描述性:这样代码的可读性会更好。
  • 变量名区分大小写:例如,myVariable和myvariable是两个不同的变量。
  • 避免使用内置函数或类的名称作为变量名:这可能会导致意外的行为或错误。

7 数据类型

  • 整型(int):正整数、负整数和零,例如:123, -456, 0。
  • 浮点型(float):带有小数点的数字,例如:1.23, -0.456。
  • 复数(complex):由实部和虚部组成的数,表示为a + bj,其中a和b是浮点数,j(或J)是虚数单位。例如:3+4j。
  • 字符串(str):一系列字符组成的文本,用单引号、双引号或三引号括起来。例如:'hello',"world",'''Hello, world!'''。
  • 布尔值(bool):只有两个值,True和False,用于表示逻辑条件。
  • 列表(list):有序的元素集合,用方括号[]括起来,元素之间用逗号分隔。列表中的元素可以是任何类型,并且同一个列表中可以有不同类型的元素。例如:[1, 2, 3, 'a', 'b']。
  • 元组(tuple):与列表类似,但是元组是不可变的,即创建后不能修改其元素。元组用圆括号()括起来。例如:(1, 2, 3)。
  • 字典(dict):无序的键值对集合,用花括号{}括起来,每个键值对用冒号:分隔,键值对之间用逗号,分隔。键通常是不可变的类型(如整数、浮点数、字符串或元组),而值可以是任何类型。例如:{'name': 'Alice', 'age': 30}。
  • 集合(set):无序且不包含重复元素的集合,用花括号{}或set()函数表示。集合用于去重或检查某个元素是否存在于某个集合中。例如:{1, 2, 3}。
  • NoneType:None是NoneType类型的唯一值,表示空值或没有值。它经常用于表示变量没有设置值或函数没有返回值。

类型转换

在Python中,数据类型转换是很常见的操作。Python提供了多种内置函数,用于在数据类型之间进行转换。以下是一些常见的Python数据类型转换的示例:

整数(int)与浮点数(float)之间的转换:

  • 使用 int() 函数将浮点数转换为整数(ps:注意这会导致小数部分被丢弃)。
num_float = 3.14
num_int = int(num_float)  # 结果为 3
  •  使用 float() 函数将整数或字符串转换为浮点数。
num_str = "123"
num_float = float(num_str)  # 结果为 123.0

字符串(str)与整数/浮点数之间的转换

  •  如前所述,使用 int() 和 float() 函数可以将字符串转换为整数或浮点数,但前提是字符串表示的是一个有效的数字。
num_str = "123"
num_int = int(num_str)  # 结果为 123num_str_float = "3.14"
num_float = float(num_str_float)  # 结果为 3.14

 列表(list)与元组(tuple)之间的转换

  • 使用 list() 函数可以将元组转换为列表。
my_tuple = (1, 2, 3)
my_list = list(my_tuple)  # 结果为 [1, 2, 3]
  •  使用 tuple() 函数可以将列表转换为元组。
my_list = [1, 2, 3]
my_tuple = tuple(my_list)  # 结果为 (1, 2, 3)

 其他类型转换:

  •  使用 bool() 函数可以将其他数据类型转换为布尔值(True 或 False)。
# 整数转换为布尔值
num_int = 0
print(bool(num_int))  # False,因为0被视为Falsenum_int = 1
print(bool(num_int))  # True,因为非0整数被视为True# 字符串转换为布尔值
empty_str = ""
print(bool(empty_str))  # False,因为空字符串被视为Falsenon_empty_str = "Hello"
print(bool(non_empty_str))  # True,因为非空字符串被视为True# 列表转换为布尔值
empty_list = []
print(bool(empty_list))  # False,因为空列表被视为Falsenon_empty_list = [1, 2, 3]
print(bool(non_empty_list))  # True,因为非空列表被视为True# 字典转换为布尔值
empty_dict = {}
print(bool(empty_dict))  # False,因为空字典被视为Falsenon_empty_dict = {"key": "value"}
print(bool(non_empty_dict))  # True,因为非空字典被视为True
  • 使用 set() 函数可以将列表或元组转换为集合(set)。
# 列表转换为集合
list_to_set = [1, 2, 2, 3, 4]
set_from_list = set(list_to_set)
print(set_from_list)  # {1, 2, 3, 4},集合中的元素唯一# 元组转换为集合
tuple_to_set = (1, 2, 3, 3, 4)
set_from_tuple = set(tuple_to_set)
print(set_from_tuple)  # {1, 2, 3, 4},集合中的元素唯一
  • 使用 dict() 函数或花括号 {} 可以将键值对(通常是元组列表或另一个字典)转换为字典。
# 使用dict()函数
dict_from_tuple_list = dict([(1, 'one'), (2, 'two'), (3, 'three')])
print(dict_from_tuple_list)  # {1: 'one', 2: 'two', 3: 'three'}# 使用花括号{}
dict_from_pairs = {1: 'one', 2: 'two', 3: 'three'}
print(dict_from_pairs)  # {1: 'one', 2: 'two', 3: 'three'}# 从另一个字典创建字典
another_dict = {'a': 1, 'b': 2}
dict_from_another_dict = dict(another_dict)
print(dict_from_another_dict)  # {'a': 1, 'b': 2}
  • 使用 complex() 函数可以将两个数字转换为复数。
# 实数部分和虚数部分
real_part = 3
imag_part = 4# 转换为复数
complex_num = complex(real_part, imag_part)
print(complex_num)  # (3+4j)# 只有一个参数时,它被视为复数的实数部分,虚数部分为0
complex_num_only_real = complex(real_part)
print(complex_num_only_real)  # (3+0j)

这些示例展示了如何使用Python的内置函数来执行不同类型之间的转换。 

9 表达式

在Python中,表达式是由运算符和操作数组成的代码片段,它会被Python解释器计算并产生一个值。表达式可以很简单,也可以很复杂,它们可以包含变量、常量、函数调用、运算符等。

以下是一些Python表达式的例子:

  • 简单的算术表达式:
2 + 3  # 结果为 5
5 - 2  # 结果为 3
10 * 2  # 结果为 20
10 / 2  # 结果为 5.0(在Python 3中,整数除法返回浮点数)
10 // 3  # 结果为 3(整数除法,只取整数部分)
10 % 3  # 结果为 1(取余数)
  • 字符串表达式:
"Hello, " + "World!"  # 结果为 "Hello, World!"
"Python is " + str(3.14) + "!"  # 结果为 "Python is 3.14!"
  • 逻辑表达式:
True and False  # 结果为 False
True or False   # 结果为 True
not True        # 结果为 False
  • 比较表达式:
5 > 3  # 结果为 True
10 < 5  # 结果为 False
2 == 2  # 结果为 True
3 != 2  # 结果为 True

10 运算符

Python 中的运算符用于执行各种算术运算、比较运算、逻辑运算、位运算、赋值运算以及身份和成员关系运算。以下是 Python 比较常见基础的运算符及其用法:

1. 算术运算符

# 算术运算符
a = 5
b = 3
print(a + b)       # +:加法                  结果:8 
print(a - b)       # -:减法                  结果:2
print(a * b)       # *:乘法                  结果:15
print(a / b)       # /:除法(结果总是浮点数) 结果:1.6666666666666667
print(a // b)      # //:整除(取整数部分)    结果:1
print(a % b)       # %:取模(求余数)         结果:2
print(a ** b)      # **:乘方(幂运算)        结果:125

2. 比较运算符

# 比较运算符
a = 5
b = 3
print(a == b)       # ==:等于      结果:False
print(a != b)       # !=:不等于    结果:True
print(a > b)        # >:大于       结果:True
print(a < b)        # <:小于       结果:False
print(a >= b)       # >=:大于等于  结果:True
print(a <= b)       # <=:小于等于  结果:False

3. 逻辑运算符

# 逻辑运算符
print(True and False)  # and:逻辑与 结果:False
print(True or False)   # or:逻辑或  结果:True
print(not True)        # not:逻辑非 结果:False

以上即是博主认为Python比较基础的一下知识,在开始编写Python前务必掌握,如有遗留欢迎补充,抱拳 !!!

ps:博主也是个Python萌新,后续会持续更新Python学习内容,如感兴趣跟着博主从零开始学习关注点一下吧~

有什么问题都可以评论区留言,看见都会回复的!!!

如果你觉得本篇文章对你有所帮助的,多多支持!!!

点赞收藏评论,抱拳了!!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

航空数据管控系统-①项目准备阶段:任务1:项目需求描述

任务描述 从用户的角度阐述项目的开发背景、使用范围及功能需求&#xff0c;从而指导学生独立完成项目的设计与开发。 任务指导 目录 标题 内容 备注 1. 项目概述 1.1 项目背景介绍 &#xff08;1&#xff09;说明产品是什么&#xff0c;什么用途 &#xff08;2&#xff…

【FFmpeg】avcodec_send_frame函数

目录 1.avcodec_send_frame1.1 将输入的frame存入内部buffer&#xff08;encode_send_frame_internal&#xff09;1.1.1 frame的引用函数&#xff08;av_frame_ref &#xff09;1.1.1.1 帧属性的拷贝&#xff08;frame_copy_props&#xff09;1.1.1.2 buffer的引用函数&#xf…

Linux和mysql中的基础知识

cpu读取的指令大部分在内存中&#xff08;不考虑缓存&#xff09; 任何程序在运行之前都的加入到内存。 eip->pc指针&#xff0c;指明当前指令在什么位置。 代码大概率是从上往下执行的&#xff0c;基于这样的基本理论。既可以将一部分指令加载到CPU对应的缓存中&#xf…

git 还原被删除的分支

在多人项目开发中&#xff0c;有一次碰到忘记合并到master分支了&#xff0c;直接就把开发分支给删除了&#xff0c;现在记录下怎么还原被删除的分支 必须保证删除的分支之前已经被推送到了远程仓库 # 找出被删除分支的最后一个提交的哈希值 git reflog show# 找到提交哈希值…

【SSL 1823】消灭怪物(非传统BFS)

题目大意 小b现在玩一个极其无聊的游戏&#xff0c;它控制角色从基地出发&#xff0c;一路狂奔夺走了对方的水晶&#xff0c;可是正准备回城时&#xff0c;发现地图上已经生成了 n n n 个怪。 现在假设地图是二维平面&#xff0c;所有的怪和角色都认为是在这个二维平面的点上…

微信小程序的开发

前端&#xff1a;微信小程序开发的技术 后端&#xff1a;springboot的框架 一&#xff1a;微信小程序环境的搭建 1. 访问微信开发者官⽅⽹站的⼩程序开发⼯具下载⻚⾯。 2. 根据你的操作系统&#xff08;Windows、macOS或Linux&#xff09;选择合适的版本进⾏下载。 3. 下…

前端三件套开发模版——产品介绍页面

今天有空&#xff0c;使用前端三件套html、css、js制作了一个非常简单的产品制作页面&#xff0c;与大家分享&#xff0c;希望可以满足大家应急的需求。本页面可以对产品进行“抢购”、对产品进行介绍&#xff0c;同时可以安排一张产品的高清大图&#xff0c;我也加入了页面的背…

电气-伺服(4)CANopen

一、CAN Controller Area Network ,控制器局域网&#xff0c;80年的德国Bosch的一家公司研发可以测量仪器直接的实时数据交换而开发的一款串行通信协议。 CAN发展历史 二、CAN 的osi 模型 CAN特性&#xff1a; CAN 的数据帧 三、CANopen 什么是CANopen CANopen 的网络模型 …

力扣1685.有序数组中差绝对值之和

力扣1685.有序数组中差绝对值之和 记录左边之和 和 右边之和从左到右遍历每个元素 求res class Solution {public:vector<int> getSumAbsoluteDifferences(vector<int>& nums) {int n nums.size(),lsum 0,rsum accumulate(nums.begin(),nums.end(),0);ve…

MySQL8 快速导入数据指令load Data 最全详解

MySQL8 快速导入数据指令load Data 最全详解 修改mysql配置文件修改my.ini文件进入mysql,进入库"ceshi"查询你导入的数据表导入数据查询导入的数据 项目基础windows版本MySQL8 修改mysql配置文件 找到mysql的安装目录下的my.ini文件 C:\ProgramData\MySQL\MySQL Serv…

openEuler AArch64 架构 vCPU 热插拔技术内幕

OpenAtom openEuler&#xff08;简称"openEuler"&#xff09;社区引领技术浪潮&#xff0c;早在openEuler 20.09 创新版本就率先使能并对外开放了 AArch64 架构 vCPU 热插特性。时隔四年&#xff0c;openEuler 24.03 LTS 版本补充了 vCPU 热拔能力&#xff0c;vCPU 热…

2.5 C#视觉程序开发实例1----设计一个IO_Manager

2.5 C#视觉程序开发实例1----设计一个IO_Manager 第一步目标&#xff1a; 1 实现获取IO触发信号Trig0 2 能够实现程序切换 3 图像处理后能够输出一个脉冲 1 IO 引脚定义 1.1 输入信号定义 1.2 输出信号定义 2 IO时序图 2.1 触发时序 2.2 切换程序时序图 3 IO_Manager.cs …

【运维】如何在Ubuntu中设置一个内存守护进程来确保内存不会溢出

文章目录 前言增加守护进程1. 编写监控脚本2. 创建 systemd 服务文件3. 启动并启用服务4. 验证服务是否运行注意事项 如何修改守护进程1. 修改监控脚本2. 重新加载并重启服务3. 验证服务是否运行总结 如何设置一个日志文件来查看信息1. 修改监控脚本以记录日志方法一&#xff1…

2024 年 亚太赛 APMCM (C题)中文赛道国际大学生数学建模挑战赛 | 量子计算的物流配送 | 数学建模完整代码+建模过程全解全析

当大家面临着复杂的数学建模问题时&#xff0c;你是否曾经感到茫然无措&#xff1f;作为2022年美国大学生数学建模比赛的O奖得主&#xff0c;我为大家提供了一套优秀的解题思路&#xff0c;让你轻松应对各种难题&#xff01; 完整内容可以在文章末尾领取&#xff01; 该段文字…

【课程设计】基于python的一款简单的计算器

我们是大二本科生团队&#xff0c;主力两人耗时3天完成了这款计算器的制作。希望大家给我们多多引流&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 欢迎各位优秀的高考学子报考长安大学&#xff0c;报考长安大学电子信息工程专业。 欢迎有志于就…

JavaScript懒加载图像

懒加载图像是一种优化网页性能的技术&#xff0c;它将页面中的图像延迟加载&#xff0c;即在用户需要查看它们之前不会立即加载。这种技术通常用于处理大量或大尺寸图像的网页&#xff0c;特别是那些包含长页面或大量媒体内容的网站。 好处 **1. 加快页面加载速度&#xff1a…

Nginx系列(二)---Mac上的快速使用

一、安装 前置软件&#xff1a;Homebrew 安装方法&#xff1a;终端输入/bin/bash -c "$(curl -fsSL <https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh>)"更新&#xff1a; brew update 设置中科大镜像源&#xff1a;git -C "$(brew --r…

KUKA机器人中断编程3—暂停功能的编程

在KUKA机器人的使用过程中&#xff0c;对于调试一个项目&#xff0c;当遇到特殊情况时需要暂停机器人&#xff0c;等异常情况处理完成后再继续机器人的程序运行。wait for指令是等待一个输入信号指令&#xff0c;没有输入信号&#xff0c;机器人一直等待。在一定程度上程序也不…

大白菜U盘启动工具

大白菜如何u盘启动进winpe装系统大白菜是一款非常实用的U盘启动盘制作工具&#xff0c;可以帮助用户快速地将U盘制作成启动盘&#xff0c;从而方便地进行系统安装、维护和修复等操作。官方网站&#xff1a; 大白菜u盘启动盘制作工具_大白菜u盘装系统_大白菜pe_大白菜官网-首页…

启动Nuxt-hub-starter: Failed to initialize wrangler bindings proxy write EOF

重新安装 node.js 这样做可以确保下载到了适合的 Windows 框架、Chocolatey&#xff08;一款Windows包管理工具&#xff09;、Python 等资源。 这个错误与Node版本、pnpm/yarn 的版本无关&#xff01; Node.js — Download Node.js (nodejs.org)