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…...

【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖
在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会࿰…...

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践
作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…...

QT开发技术【ffmpeg + QAudioOutput】音乐播放器
一、 介绍 使用ffmpeg 4.2.2 在数字化浪潮席卷全球的当下,音视频内容犹如璀璨繁星,点亮了人们的生活与工作。从短视频平台上令人捧腹的搞笑视频,到在线课堂中知识渊博的专家授课,再到影视平台上扣人心弦的高清大片,音…...
Python的__call__ 方法
在 Python 中,__call__ 是一个特殊的魔术方法(magic method),它允许一个类的实例像函数一样被调用。当你在一个对象后面加上 () 并执行时(例如 obj()),Python 会自动调用该对象的 __call__ 方法…...