Python基础入门 --- 1-2.字面量
文章目录
- Python基础入门
- 第一章:
- 1.1 第一个python程序
- 第二章 :
- 2.1 字面量
- 2.2 常用的值类型
- 2.3 字符串
- 2.3.1 三种定义方式
- 2.3.2 引号嵌套
- 2.3.3 字符串拼接
- 2.3.4 字符串格式化
- 2.3.5 格式化的精度控制
- 数字精度控制:
- 2.3.6 字符串格式化方式2
- 2.3.7 表达式格式化
- 2.4 注释
- 2.4.1 注释的分类
- 2.5 变量
- 2.5.1 变量作用域
- 2.6 数据类型
- 2.6.1 数据类型转换
- 2.6.2 type()语句
- 2.7 标识符
- 2.7.1 标识符命名规则
- 2.7.2 内容限定
- 2.7.3 大小写敏感
- 2.7.4 不可使用关键字
- 2.8 运算符
- 2.8.1 算术运算符
- 2.8.2 赋值运算符
- 2.8.3 复合赋值运算符
- 2.9 基本输出函数print
- 2.10 基本输出函数input
Python基础入门
第一章:
1.1 第一个python程序
print("Hello World!")
第二章 :
2.1 字面量
定义:在代码中,被写下来的固定的值,称为字面量。
2.2 常用的值类型
类型 | 描述 | 说明 |
---|---|---|
数字(Number) | 整数(int) 浮点数(float) 复数(complex) 布尔(bool) | 整数(int):10,-20 浮点数(float):3.14,-3.14 复数(complex):4+3j,j结尾表示复数 布尔(bool):表示现实生活中的逻辑,真和假,真:True(1) 假:False(0) |
字符串(String) | 描述文本的一种数据类型 | 由任意数量的字符组成 |
列表(List) | 有序的可变序列 | 使用最频繁的数据类型,可有序记录一堆数据 |
元组(Tuple) | 有序的不可变序列 | 可有序记录一堆不可变的Python数据集合 |
集合(Set) | 无序不重复集合 | 可无序记录一堆不重复的Python数据集合 |
字典(Dictionary) | 无序Key-Value集合 | 可无序记录一堆Key-Value型的Python数据集合 |
2.3 字符串
组成:
-
中文
-
英文
-
各类符号
-
数字
123456;
1.23
"你好"print(123456)
print(1.23)
print("你好")
2.3.1 三种定义方式
-
单引号定义法:name = “小明”
-
双引号定义法:name = ““小明””
-
三引号定义法:name = ”““小明””“
name_1 = '小明'
name_2 = "小明"
name_3 = """小明"""
print(type(name_1))
print(type(name_2))
print(type(name_3))
2.3.2 引号嵌套
-
单引号定义法,可内含双引号
-
双引号定义法,可内含单引号
-
可用转义字符(\)开将引号解除效用,变成普通字符串
name = '"小明"'
print(name)
name = "'小明'"
print(name)
name = "\"小明\""
print(name)
name = '\'小明\''
print(name)
2.3.3 字符串拼接
使用‘‘+’’号连接字符串变量或字符串字面量即可。
name = "小明"
print("我的名字是:" + name + ",很高兴认识大家!")
输出结果:我的名字是:小明,很高兴认识大家!
2.3.4 字符串格式化
可通过以下语法,完成字符串和常量的快速拼接。
name = "小明"
message = "我的名字是: %s" % name
print(message)
-
%:表示需要占位
-
s:表示将变量变成字符串放入占位的地方
多个变量占位:
name = "小明"
telephone = 165481320
message = "我的名字是: %s, 电话号码是:%s" % (name,telephone)
print(message)
常用数据类型占位:
格式符号 | 转化 |
---|---|
%s | 内容转换为字符串,放入占位位置 |
%d | 内容转换为整数,放入占位位置 |
%f | 内容转换为浮点型,放入占位位置 |
2.3.5 格式化的精度控制
三种不同类型变量的占位
name = "张三"
age = 18
num = 3.99
message = "我是:%s,我的年龄是:%d,我看到一个小数:%f" % (name, age, num)
print(message)
# 输出:我是:张三,我的年龄是:18,我看到一个小数:3.990000
浮点数3.99,输出的是3.990000
数字精度控制:
可用辅助符号“m.n”控制数据的宽度和精度
-
m,控制宽度,要求是数字,设置的宽度小于数字本身。
-
.n,控制小数点精度,要求是数字,会进行小数的四舍五入运算。
num1 = 10
num2 = 10.354
print("数字10宽度限制5,结果为:%5d" % num1)
print("数字10宽度限制1,结果为:%1d" % num1)
print("数字10.354宽度限制8,小数精度2,结果为:%8.2f" % num2)
print("数字10.354小数限制2,结果为:%.2f" % num2)
2.3.6 字符串格式化方式2
语法结构:f"内容{变量}"
name = "张三"
age = 18
num = 3.99
print(f"我是{name},我的年龄是{age},我看到一个小数:{num}")
# 我是张三,我的年龄是18,我看到一个小数:3.99
2.3.7 表达式格式化
print("10 * 5 = %d" % (10 * 5))
print(f"10 * 10 = {10 * 10}")
print("数字10在Python中的类型是:%s" % type(10))
2.4 注释
定义:对程序代码进行解释说明。
作用:注释不能被执行,它不是程序,只对代码进行解释说明,让别人能够看懂代码的作用,增强代码的可读性。
2.4.1 注释的分类
-
单行注释:#开头,#的右边所有文字当说明,不是真正要执行的程序,辅助说明作用。
-
多行注释:一堆三个双引号,(“"“注释内容”””)解释说明一段代码的作用。
#定义一个整型字面量
a = 10""""
print("hello")
print("world")
"""
2.5 变量
定义:在程序运行时,存储计算结果或可表示值的抽象概念。
作用:用来记录数据。
定义格式:变量名称 = 变量的初始值
val = 10
print("val的值为:", val)
2.5.1 变量作用域
定义:变量的作用范围。
分为两类:
-
全局变量
-
局部变量
全局变量:
在函数体内、函数体外都能有效的变量
a = 10def test_01():print(a)def test_02():global aa = 20 # 设定内部定义的变量为全局变量print(a)test_01()
test_02()
print(a)
print(a)
局部变量:
定义在函数体内部的变量,只在函数体内部有效。
作用:在函数体内部,临时保存数据,当函数调用完成后,会销毁局部变量。
def test():a = 10print(f"1.a的值是{a}")
test()
print(f"2.a的值为{a}") # 报错
2.6 数据类型
类型 | 描述 | 说明 |
---|---|---|
string | 字符串类型 | 用引号引起来的数据 |
int | 整型(有符号) | 存放整数,如:-5,10,0等 |
float | 浮点型(有符号) | 存放小数,如:-1.51,3.14等 |
2.6.1 数据类型转换
常见转换语句:
语句(函数) | 说明 |
---|---|
int(x) | x转换成一个整数 |
float(x) | x转换成一个浮点数 |
str(x) | 对象x转换成字符串 |
# 数字类型转换为字符串
num_str =str(10)
print(type(num_str), num_str)float_str = str(3.14)
print(type(float_str), float_str)# 字符串类型转换成数字
num1 = int("10")
print(type(num1),num1)num2 = float("3.14")
print(type(num2), num2)# 整数转浮点数
float_num = float(10)
print(type(float_num), float_num)# 浮点数转整数
int_num = int(3.14)
print(type(int_num), int_num)num2), num2)
补充:将字符串转换成数字,字符串中的内容必须都是数字。
2.6.2 type()语句
语法:type(被查看类型的数据)。
作用:可以查看数据的类型。
# 方法1:用print直接输出类型信息
print(type(1))
print(type(1.34))
print(type("你好"))
# 方法2:用变量存放type语句执行后的结果
int_type = type(123)
float_type = type(3.14)
string_type = type("你好")
print(int_type)
print(float_type)
print(string_type)
# 方法3:查看变量中存储的数据类型信息
name = "张三"
name_type = type(name)
print(name_type)
2.7 标识符
-
变量的名字
-
方法的名字
-
类的名字等等
这些名字,统称为标识符,用来做内容的标识。
2.7.1 标识符命名规则
-
内容限定
-
大小写敏感
-
不可使用关键字
2.7.2 内容限定
标识符命名中,只允许出现:
-
英文
-
中文
-
数字(不可以开头)
-
下划线(__)
其余任何内容不被允许。
2.7.3 大小写敏感
H = "Hello"
h = "hello"
print(H)
print(h)
输出:
Hello
hello
字母h的大小写,是能够完全区分的。
2.7.4 不可使用关键字
False True None and as assert 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
# 内容限定
name_1 = "小明"
2_name = "小明" # 错误
_3name = "小明"
name_! = "小明" # 错误# 大小写敏感
Input = "psd"
input = 123
print(Input)
print(input)# 不可使用关键字
class = 10 # 错误
def = 20 # 错误
2.8 运算符
2.8.1 算术运算符
运算符 | 描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
// | 取整除 |
% | 取余 |
** | 指数 |
print("1 + 1 = ", 1+1)
print("1 - 1 = ", 1-1)
print("4 * 2 = ", 4*2)
print("4 / 2 = ", 4/2)
print("4 // 2 = ", 4//2)
print("5 % 2 = ", 5%2)
print("4 ** 2 = ", 4**2)
2.8.2 赋值运算符
运算符 | 描述 |
---|---|
= | 赋值运算符 |
num = 10 + 20
2.8.3 复合赋值运算符
运算符 | 描述 |
---|---|
+= | 加法赋值运算符 |
-= | 减法赋值运算符 |
*= | 乘法赋值运算符 |
/= | 除法赋值运算符 |
%= | 取模赋值运算符 |
**= | 幂赋值运算符 |
//= | 取整除赋值运算符 |
num = 1
num += 1 # 等价于num = num + 1
print(num)num = 1
num -= 1 # 等价于num = num - 1
print(num)num = 1
num *= 4 # 等价于num = num * 4
print(num)num = 4
num /= 2 # 等价于num = num / 2
print(num)num = 5
num %= 2 #等价于num = num % 2
print(num)num = 4
num **= 2 #等价于num = num ** 2
print(num)num = 4
num //= 2 #等价于num = num // 2
print(num)
2.9 基本输出函数print
语法结构:print(输出内容)
完整语法格式:
print(value,…sep=‘’,end=‘\n’,file=None)
2.10 基本输出函数input
语法结构:x=input(‘提示文字’)
无论输入的数据类型是什么,x的数据类型都是字符串类型。
print("你今年的年龄是多少:")
age = input()
print("年龄:%s" % age)
相关文章:

Python基础入门 --- 1-2.字面量
文章目录 Python基础入门第一章:1.1 第一个python程序 第二章 :2.1 字面量2.2 常用的值类型2.3 字符串2.3.1 三种定义方式2.3.2 引号嵌套2.3.3 字符串拼接2.3.4 字符串格式化2.3.5 格式化的精度控制数字精度控制: 2.3.6 字符串格式化方式22.3…...
华为云计算hcie认证考什么?华为hciie认证好考吗
1.理论知识:HCIE认证首先要求考生具备扎实的云计算理论基础,包括云计算的基本概念、架构、关键技术、安全管理等方面的知识。考生需要深入理解云计算的核心原理,以及华为云计算产品的特点和优势。 2.实践技能:除了理论知识外&…...
redis spring cache
数据库的数据是存储在硬盘上的,频繁访问性能较低。如果将一些需要频繁查询的热数据放到内存的缓存中,可以大大减轻数据库的访问压力。 SpringCache SpringCache提供基本的Cache抽象,并没有具体的缓存能力,需要配合具体的缓存实现…...

图解I/O中的零拷贝技术
什么是零拷贝? 零拷贝是一种计算机系统中的 I/O 优化技术,它的核心思想是在数据传输过程中尽可能地减少或完全避免 CPU 将数据从一个存储区域复制到另一个存储区域的操作,从而减少了上下文切换和 CPU 拷贝时间,提高了系统的性能和…...
【设计模式】Java 设计模式之桥接模式(Bridge)
桥接模式(Bridge Pattern)是结构型设计模式的一种,它主要解决的是抽象部分与实现部分的解耦问题,使得两者可以独立变化。这种类型的设计模式属于结构型模式,因为该模式涉及如何组合接口和它们的实现。将抽象部分与实现…...

记录dockers中Ubuntu安装python3.11
参考: docker-ubuntu 安装python3.8,pip3_dockerfile ubuntu22 python3.8-CSDN博客...

【算法专题--双指针算法】leetcode--283. 移动零、leetcode--1089. 复写零
🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 前言1. 移动零࿰…...

【JavaEE -- 多线程3 - 多线程案例】
多线程案例 1.单例模式1.1 饿汉模式的实现方法1.2 懒汉模式的实现方法 2. 阻塞队列2.1 引入生产消费者模型的意义:2.2 阻塞队列put方法和take方法2.3 实现阻塞队列--重点 3.定时器3.1 定时器的使用3.2 实现定时器 4 线程池4.1 线程池的使用4.2 实现一个简单的线程池…...
k8s的pod服务升级,通过部署helm升级
要通过Helm升级Kubernetes(k8s)中的Pod服务,你可以按照以下步骤进行操作: 安装Helm: 如果你还没有安装Helm,可以通过官方文档提供的方式进行安装。添加Helm仓库: 确保你已经添加了包含你要升级…...

复现文件上传漏洞
一、搭建upload-labs环境 将下载好的upload-labs的压缩包,将此压缩包解压到WWW中,并将名称修改为upload,同时也要在upload文件中建立一个upload的文件。 然后在浏览器网址栏输入:127.0.0.1/upload进入靶场。 第一关 选择上传文件…...
Java 内存异常
内存溢出 内存溢出指的是在程序执行过程中,申请的内存超过了系统实际可用的内存资源。 内存溢出的常见情况: 创建大量对象并持有引用:在程序中创建大量对象并持有对这些对象的引用,而没有及时释放这些引用,导致堆内存…...

Windows11去掉 右键菜单的 AMD Software:Adrenalin Edition 选项
Windows11去掉 右键菜单的 AMD Software:Adrenalin Edition 选项 运行regedit打开注册表编辑器 先定位到 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\PackagedCom\Package 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\PackagedCom\Package找到 AdvancedMicroDevicesInc-2.…...
uniapp实现我的订单页面无感 - 删除数据
在进入我们的订单页面时进行获取列表,上拉加载,下拉刷新等请求,我们在删除数据时,请求删除接口后,不要重新去请求数据,不要重新去请求数据,不要重新去请求数据 重新请求会刷新页面中的数据 方…...

MySQL—redo log、undo log以及MVCC
MySQL—redo log、undo log以及MVCC 首先回忆一下MySQL事务的四大特性:ACID,即原子性、一致性、隔离性和持久性。其中原子性、一致性、持久性实际上是由InnoDB中的两份日志保证的,一份是redo log日志,一份是undo log日志ÿ…...
13 list的实现
注意 实现仿cplus官网的list类,对部分主要功能实现 实现 文件 #pragma once #include <assert.h>namespace mylist {template <typename T>struct __list_node{__list_node(const T& x T()): _prev(nullptr), _next(nullptr), _data(x){}__lis…...
如何用client-go获取k8s因硬盘容量、cpu、内存、gpu资源不够引起的错误信息?
在Kubernetes中,你可以使用client-go库来获取Pod的状态和事件,这些信息可能包含了由于资源不足引起的错误信息。 以下是一个基本的示例,展示如何使用client-go来获取Pod的状态和事件: package mainimport ("flag"&quo…...

IDEA编译安卓源码TVBox(2)
一、项目结构:主要app和player app结构 二、增加遥控器按键选台 修改LivePlayActivity.java 1、声明变量 public String channelId "";public Timer timer new Timer();public Toast mToast;2、定义方法 private void mToastShow(String s){mToast …...

【C#】.net core 6.0 使用第三方日志插件Log4net,配置文件详细说明
欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是《C#》系列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。…...

第十四届蓝桥杯省赛真题 Java 研究生 组【原卷】
文章目录 发现宝藏【考生须知】试题 A: 特殊日期试题 B: 与或异或试题 C: 棋盘试题 D: 子矩阵试题 E : \mathrm{E}: E: 互质数的个数试题 F: 小蓝的旅行计划试题 G: 奇怪的数试题 H: 太阳试题 I: 高塔试题 J \mathrm{J} J : 反异或 01 串 发现宝藏 前些天发现了一个巨牛的人…...
adb shell input text 输入中文
由于adb 不支持中文输入(不支持 Unicode),需要使用虚拟键盘绕一圈。 可以直接参考和使用: https://github.com/senzhk/ADBKeyBoard # 通用方式 adb shell am broadcast -a ADB_INPUT_TEXT --es msg 赞 # mac/linux 支持 base64…...

SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...

Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...