7天入门python系列之第二天python 基础语法
第2天主要是学习Python的基础知识
编者打算开一个python 初学主题的系列文章,用于指导想要学习python的同学。关于文章有任何疑问都可以私信作者。对于初学者想在7天内入门Python,这是一个紧凑的学习计划。但并不是不可完成的。第二天开始python 基础知识的学习。
变量和数据类型:
了解Python中的变量,它们用于存储数据。
python 定义变量
在Python中,你可以通过简单的赋值语句来定义变量。以下是定义变量的基本语法:
variable_name = value
variable_name 是你要定义的变量的名称,通常使用有意义的名称来描述变量的用途。
value 是你要分配给变量的值,可以是数字、文本、布尔值、对象等,具体取决于变量的用途。
下面是一些示例:
name = "John" # 定义一个字符串变量 name,赋值为 "John"
age = 30 # 定义一个整数变量 age,赋值为 30
is_student = True # 定义一个布尔变量 is_student,赋值为 True
pi = 3.14159 # 定义一个浮点数变量 pi,赋值为 3.14159
在Python中,你不需要显式地声明变量的数据类型,Python会自动根据所赋的值来确定变量的数据类型。这种特性称为动态类型。
你可以在程序中随时更改变量的值,例如:
age = 35 # 将 age 变量的值更改为 35
Python支持的常见数据类型
Python支持多种常见数据类型
以下是Python中基础数据类型的声明示例:
- 整数(int):
age = 25
count = -10
- 浮点数(float):
pi = 3.14159
temperature = 98.6
- 字符串(str):
name = "Alice"
message = 'Hello, World!'
- 布尔值(bool):
is_student = True
has_license = False
- 列表(list):
fruits = ["apple", "banana", "cherry"]
numbers = [1, 2, 3, 4, 5]
- 元组(tuple):
point = (3, 5)
coordinates = (-2.5, 7.0, 1.5)
- 字典(dict):
person = {"name": "John", "age": 30, "city": "New York"}
book = {"title": "Python Programming", "author": "Guido van Rossum"}
- 集合(set):
colors = {"red", "green", "blue"}
prime_numbers = {2, 3, 5, 7, 11}
- NoneType(None):
result = None
- 复数(complex):
z = 3 + 2j
w = -1.5 - 0.5j
- 字节串(bytes) 和 字节数组(bytearray):
binary_data = b'\x48\x65\x6c\x6c\x6f'
byte_array = bytearray([72, 101, 108, 108, 111])
这些示例演示了如何声明不同类型的变量,并为每种类型提供了相应的值。在Python中,你可以直接赋值给变量而无需显式声明变量的类型。根据所赋的值,Python会自动确定变量的数据类型。
这些数据类型在Python中非常常用,根据需要选择合适的数据类型来存储和操作数据。Python的灵活性和动态类型系统使得处理各种数据类型非常方便。
运算符
理解和熟练使用运算符是编写Python代码的关键。以下是有关Python中常见运算符的简要介绍:
算术运算符:
- 加法运算符(+):用于执行加法操作。
- 减法运算符(-):用于执行减法操作。
- 乘法运算符(*):用于执行乘法操作。
- 除法运算符(/):用于执行除法操作,返回浮点数结果。
- 取整除运算符(//):用于执行整数除法,返回整数结果。
- 取余运算符(%):用于获取除法的余数。
- 幂运算符(**):用于执行幂运算。
a = 10
b = 3
result1 = a + b # 13
result2 = a - b # 7
result3 = a * b # 30
result4 = a / b # 3.333...
result5 = a // b # 3
result6 = a % b # 1
result7 = a ** b # 1000
比较运算符:
- 等于运算符(==):检查两个值是否相等。
- 不等于运算符(!=):检查两个值是否不相等。
- 大于运算符(>):检查左侧值是否大于右侧值。
- 小于运算符(<):检查左侧值是否小于右侧值。
- 大于等于运算符(>=):检查左侧值是否大于或等于右侧值。
- 小于等于运算符(<=):检查左侧值是否小于或等于右侧值。
x = 5
y = 10
result1 = x == y # False
result2 = x != y # True
result3 = x > y # False
result4 = x < y # True
result5 = x >= y # False
result6 = x <= y # True
逻辑运算符:
- 与运算符(and):如果两个条件都为真,返回真。
- 或运算符(or):如果至少一个条件为真,返回真。
- 非运算符(not):用于取反条件的值。
p = True
q = False
result1 = p and q # False
result2 = p or q # True
result3 = not p # False
这些运算符是编写条件和表达式时的基本工具。你可以使用它们来执行各种计算和逻辑操作。在实际编程中,运算符的组合非常常见,以满足复杂的需求。
条件语句:
条件语句是编程中的基本构建块之一,用于根据条件执行不同的代码块。在Python中,最常见的条件语句是if语句。
以下是关于条件语句的基本概念和示例:
if语句:
if语句用于根据一个条件执行相应的代码块。如果条件为真,执行代码块;否则,代码块将被跳过。
x = 10
if x > 5:print("x 大于 5")
在上面的示例中,如果x的值大于5,那么条件为真,print语句将执行。
else语句:
else语句可用于在if条件不满足时执行另一个代码块。
x = 3
if x > 5:print("x 大于 5")
else:print("x 不大于 5")
在这个示例中,因为x的值不大于5,所以if条件为假,else块中的代码将执行。
elif语句:
elif语句是else if的缩写,用于测试多个条件。你可以使用多个elif来检查不同的条件。
x = 5
if x > 10:print("x 大于 10")
elif x > 5:print("x 大于 5,但不大于 10")
else:print("x 不大于 5")
在这个示例中,根据x的值,第一个条件为假,第二个条件为真,因此执行第二个条件下的代码块。
条件表达式:
条件表达式(也称为三元运算符)是一种紧凑的方式来根据条件为真或假选择不同的值。
x = 8
message = "x 大于 5" if x > 5 else "x 不大于 5"
print(message)
在这个示例中,如果x大于5,message变量将包含"x 大于 5",否则它将包含"x 不大于 5"。
条件语句允许你根据不同的情况执行不同的代码块,这在编程中是非常有用的。你可以使用它们来实现程序的控制流和逻辑分支。
循环结构
循环结构是编程中常用的工具,用于重复执行一组代码,直到满足某个条件或达到特定的次数。在Python中,有两种主要的循环结构:for循环和while循环。
for循环:
for循环用于迭代遍历一个序列(如列表、元组或字符串)中的元素,或者执行特定次数的操作。以下是for循环的基本语法:
for 变量 in 序列:# 执行代码块
示例1:使用for循环遍历列表中的元素。
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:print(fruit)
示例2:使用for循环执行特定次数的操作。
for i in range(5):print("Iteration", i)
while循环:
while循环用于在条件为真的情况下重复执行一组代码。以下是while循环的基本语法:
while 条件:# 执行代码块
示例1:使用while循环打印一系列数字,直到达到某个条件。
count = 1
while count <= 5:print(count)count += 1
示例2:使用while循环处理用户输入,直到用户输入特定的值。
user_input = ""
while user_input != "quit":user_input = input("请输入命令或输入'quit'退出:")
在这两种循环结构中,你可以根据需要执行重复的操作。for循环适用于遍历序列,而while循环适用于根据条件来控制迭代。循环结构对于处理重复性任务非常有用,可以帮助你编写更灵活和高效的程序。
基本输入和输出:
学习如何使用input()函数接收用户输入和print()函数输出文本和变量的值是Python编程的基本部分。下面是关于这两个函数的详细介绍:
接收用户输入 - input()函数:
input()函数用于从用户获取输入。它会暂停程序的执行,等待用户输入文本,用户按下回车键后,输入的文本将作为字符串返回。你可以选择将输入存储在变量中以后使用。
示例:
user_name = input("请输入您的名字:") # 提示用户输入名字
print("您的名字是:" + user_name)
在上述示例中,input()函数用于获取用户的名字输入,然后将输入存储在user_name变量中,并通过print()函数输出。
输出文本和变量的值 - print()函数:
print()函数用于在终端或控制台上显示文本和变量的值。你可以将文本和变量组合在一起输出,以便向用户显示信息。
示例:
name = "Alice"
age = 30
print("姓名:" + name + ", 年龄:" + str(age))
在这个示例中,print()函数用于输出姓名和年龄的值。注意,在输出年龄时,我们使用str(age)来将整数age转换为字符串,以便与其他字符串一起输出。
除了字符串拼接,你还可以使用字符串插值(f-strings)来更清晰地输出文本和变量的值:
name = "Alice"
age = 30
print(f"姓名: {name}, 年龄: {age}")
在Python 3.6及更高版本中,f-strings是一种方便的方式来将变量的值嵌入到字符串中。
通过使用input()和print()函数,你可以与用户进行交互,并输出程序的结果。这对于编写用户友好的程序和调试代码非常有用。
练习内容
编写一些简单的Python代码来练习上述概念。例如,你可以编写一个程序,接收用户的输入并判断一个数字是否是偶数或奇数,然后输出相应的消息。
当接收用户的输入并判断一个数字是偶数还是奇数的Python程序可以如下所示:
# 接收用户输入
user_input = input("请输入一个整数: ")# 尝试将用户输入的值转换为整数
try:number = int(user_input)# 判断数字是偶数还是奇数if number % 2 == 0:print(f"{number} 是偶数。")else:print(f"{number} 是奇数。")except ValueError:print("请输入有效的整数。")
完整代码:

运行效果 一:

运行效果二:

这个程序首先使用input()函数接收用户的输入,然后尝试将输入的值转换为整数。如果输入不是有效的整数,程序会输出一个错误消息。如果输入是整数,程序将使用取余运算符(%)来判断数字是奇数还是偶数,并输出相应的消息。
示例运行:
请输入一个整数: 6
6 是偶数。
请输入一个整数: 7
7 是奇数。
请输入一个整数: abc
请输入有效的整数。
这个程序演示了如何接收用户的输入,进行条件判断,然后输出相应的消息,根据输入的数字是奇数还是偶数。
相关文章:
7天入门python系列之第二天python 基础语法
第2天主要是学习Python的基础知识 编者打算开一个python 初学主题的系列文章,用于指导想要学习python的同学。关于文章有任何疑问都可以私信作者。对于初学者想在7天内入门Python,这是一个紧凑的学习计划。但并不是不可完成的。第二天开始python 基础知…...
【星海出品】flask 与docker
import os from flask import Flask, request from flask import Response, make_response, jsonify import cv2 import base64 import io import uuid from main import eye app Flask(__name__) app.route(/, methods[GET, POST]) # 添加路由blend def upload_file():…...
Oracle的to_date()函数解决sql语句日期格式问题
项目场景: 提示:oracle中sql语句日期格式: 如:to_date(‘2023-01-01 13:14:20’,‘yyyy-MM-dd HH:mm:ss’) //错误写法 问题描述 改变一:24小时制 to_date(‘2005-01-01 13:14:20’,‘yyyy-MM-dd HH24:mm:ss’) //错…...
Vue实现面经基础版案例(路由+组件缓存)
一、面经基础版-案例效果分析 1.面经效果演示 2.功能分析 通过演示效果发现,主要的功能页面有两个,一个是列表页,一个是详情页,并且在列表页点击时可以跳转到详情页底部导航可以来回切换,并且切换时,只有…...
uniapp打开外部链接方式
uniapp打开外部链接方式 1、H5,打开方式 window.location.href url 2、APP,打开方式 plus.runtime.openURL(url)...
SecureCRT安装、注册教程
SecureCRT保姆级安装教程!!! 安装包与注册机自取。 链接:https://pan.baidu.com/s/1IrFkHlrtCoc67QnQ_z1TWQ?pwdt25m 提取码:t25m 一 前期准备 1.1 关闭病毒查杀(如果有其他杀毒软件也要关闭࿰…...
音乐免费下载mp3格式+音频格式转换+剪辑音频+合并音频教程
1.在qq音乐网页版搜索想要的歌曲 qq音乐网站:https://y.qq.com/ 如果你是vip可以直接下载vip的歌曲,如果不是选择不是vip的歌曲进行第一步的操作 2.点击播放进入页面后F12拿到音频地址 然后双击src里面的音频地址复制 网页新标签打开赋值的这个链接&a…...
腾讯云16核服务器配置有哪些?CPU型号处理器主频性能
腾讯云16核服务器配置大全,CVM云服务器可选择标准型S6、标准型SA3、计算型C6或标准型S5等,目前标准型S5云服务器有优惠活动,性价比高,计算型C6云服务器16核性能更高,轻量16核32G28M带宽优惠价3468元15个月,…...
什么是屏蔽机房?
屏蔽机房是一种用于保护数据中心设备的安全和可靠的措施。通过屏蔽机房,可以防止电磁干扰、防止物理入侵以及提供更好的隔离和安全性。下面是一些关于屏蔽机房的常见做法: 电磁屏蔽:为了防止电磁干扰对数据中心设备的影响,可以在屏…...
wsl2 ubuntu22.04安装docker
1. 安装 docker 官网的步骤一步一步安装即可 Install Docker Engine on Ubuntu | Docker Docs 2. 安装完毕之后,不出意外的话当你运行docker version或者其他命令的时候你会报如下错误: Cannot connect to the Docker daemon at unix:///var/run/docke…...
【Java SE】详解数组
前言:在C语言中我们已经学习过数组,接下来,我们再主要学习一下Java中的数组,在Java中,数组变得更加高效和使用。 1. 数组的基本概念 1.1 什么是数组? 数组:可以看成是相同类型元素的一个集合。…...
windows下直接把文件夹打包成war包
windows下直接把文件夹打包成war包 在windows中把一个文件夹打成war包 一般开发打war包时都是用MyEclipse或IntelliJ IDEA等直接导出war文件,这里介绍一种如何把一个文件夹打成war包的方式, 如下 例如要打包的文件在D:\testWar 打开 cmd命令行窗口, 进入文件所在目录D:\testWa…...
搭建嵌入式GDB调试环境以及VSCode+gdbserver 图形化调试
目录 1 搭建嵌入式gdb调试环境 1.1 交叉编译工具链自带的gdb和gdbserver 1.2 使用gdb进行嵌入式程序调试 1.2.1编写简单测试程序 1.2.2 gdb调试程序 1.3 源码编译gdb和gdbserver 1.3.1 下载gdb和gdbserver源码 1.3.2 编译gdb 1.3.3 移植gdbserver 2 VSCodegdbserver 图…...
深入理解 Django 模板系统
概要 在任何 Web 开发过程中,渲染和展示数据是不可或缺的一部分。Django 作为一个高效的 Python Web 框架,提供了一个强大且灵活的模板系统。本文将详细介绍 Django 模板系统的核心概念、语法和高级功能。 一、Django 模板系统简介 Django 的模板系统允…...
Flutter:安装依赖报错doesn‘t support null safety
项目中需要引用http依赖,在pubspec.yaml文件中添加如下信息: 当同步时,报错信息如下: [myflutter] flutter pub upgrade Resolving dependencies... The current Dart SDK version is 3.1.3. Because myflutter depends on http &…...
MS2111多点低压差分(M-LVDS)线路驱动器和接收器
MS2111 是多点低压差分 (M-LVDS) 线路驱动器和接收器。经过 优化,可运行在高达 200Mbps 的信号速率下。所有部件均符合 M LVDS 标准 TIA / EIA-899 。该驱动器的输出支持负载低至 30Ω 的多 点总线。 MS2111 的接收器属于 Type-2 , 可在 -1…...
flink的起源、概念、特点、应用
flink的起源 Flink的起源可以追溯到2010年,当时它作为一个研究项目开始。该项目最初由德国柏林工业大学(Berlin Institute of Technology)的一群研究人员发起,包括Matei Zaharia、Kostas Tzoumas和Stephan Ewen等。 项目最初被称为…...
11月第1周榜单丨飞瓜数据B站UP主排行榜榜单(B站平台)发布!
飞瓜轻数发布2023年10月30日-11月5日飞瓜数据UP主排行榜(B站平台),通过充电数、涨粉数、成长指数、带货数据等维度来体现UP主账号成长的情况,为用户提供B站号综合价值的数据参考,根据UP主成长情况用户能够快速找到运营…...
Modbus入门
Modbus入门 ModbusModbus模拟工具模拟工具使用配置Slave配置Poll C#使用ModBus通讯在无法使用 SerialPort类 的情况下使用TCP进行 Modbus modbus使用范围广泛,广泛应用于各类仪表,PLC等。它属于应用层协议,底层硬件基于485/以太网。 Modbus的…...
Sysmon 日志监控
系统监视器 (Sysmon) 是一个 Windows 日志记录加载项,它提供精细的日志记录功能并捕获默认情况下通常不记录的安全事件。它提供有关进程创建、网络连接、文件系统更改等的信息。分析 Sysmon 日志对于发现恶意活动和安全威胁至关重要。 在不断…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...
【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
Redis数据倾斜问题解决
Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中,部分节点存储的数据量或访问量远高于其他节点,导致这些节点负载过高,影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
