IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python基础学习(九) -> 正文阅读

[Python知识库]Python基础学习(九)

Python基础学习(九)

一、字符串格式化

1. 字符串格式占位符

语法:
包含格式占位符的字符串 % (数据1, 数据2, 数据3, …)
注:数据的位置以及类型要和格式占位符一一对应

格式占位符:
%s - 字符串占位符;可以给任何类型的数据占位
%d - 整数占位符;只能给数字占位,如果是浮点数拼接的时候小数点会被去掉
%f - 浮点数占位符;只能给数字占位,默认保留六位小数
%.Nf - 浮点数占位符;只能给数字占位,保留N位小数

message = '%s今年%d岁,性别:%s,月薪是:%f元' % (name, age, gender, money)
print(message)

2. f-string

在字符串的最外面加’f’,里面就可以通过’{表达式}‘来为字符串指定的位置赋值
message = f’{name}今年{age}岁,性别:{gender},月薪是:{money}元’
print(message)

a = 100
list1 = [10, 20, 30]
message = f'a:{a}, a×10:{a * 10}, b:{12.5}, c:{"abc"}, d:{list1[1]}, 增长率:{0.2344:.2%}'
print(message)

1)基本用法:{提供数据的表达式}
2)加参数:{提供数据的表达式:参数}
:, - 数字数据在显示的时候以银行显示金额的方式来显示(从后往前每3位用一个逗号隔开),例如:1,000,000
:% - 数字数据以百分比的方式显示,百分数默认保留6位小数,’:.N%’ - N控制小数点后的位数 0.1234:.2% -> 12.34%
:.Nf - 控制数字数据显示的时候保留N位小数
:x>N - 相当于rjust,x表示填充字符,不给’x’则是用空格填充,N是填充后的长度
:x<N - 相当于ljust,x表示填充字符,不给’x’则是用空格填充,N是填充后的长度
:x^N - 相当于center,x表示填充字符,不给’x’则是用空格填充,N是填充后的长度

num = 19646; address = '四川省广安市'
print(f'年薪:{num * 12:,}, 占比:{0.1234:.2%}, 月薪:{num:.2f}')
# print(f'地址{address:,}')         # 报错,ValueError: Cannot specify ',' with 's'.
print(f'数字1:{123:>5}, 数字2:{456:0<5}, 字符串1:{"abc":>5}, 字符串2:{"def":a^5}')

二、容器型数据类型复盘

容器型数据类型:列表、元组、集合、字典、字符串、range

1. 区分不同容器的应用场景

1)容器的本质:能够同时保存多个数据
a. 字符串和range - 不适合作为容器来保存多个别的数据
字符串 - 只能以字符为单位保存多个文字符号
range - 只能存储等差数列的数据(程序只能控制范围和差)

b. 列表、元组、字典、集合 - 都可以存储通过别的方式提供的多个数据
列表、字典 - 要同时保存多个数据的最好选择(意义相同的多个数据用列表,意义不同的多个数据,用字典)
元组 - 特点:不可变!如果要求多个数据存储到容器中以后不能被修改
集合 - 去重;数学集合运算

2. 拷贝和不拷贝的问题

1)为什么元组没有copy
python存储数据的底层逻辑:
a. 数据保存在堆里面,变量在栈中,变量中保存的是数据在堆中的地址。
b. 多个相同的不可变数据在内存中只保留一个,多个相同的可变数据在内存中保留多个
id函数:
用法:
id(数据) - 获取数据在内存中的地址
id(变量) - 获取变量直接存储的那个地址

2)可变数据类型的变量直接赋值和拷贝的区别
直接用一个变量给另外一个变量赋值,赋的是地址(其实是将第一个变量中保存的数据的地址给另外一个变量)、

num = 100
age = 100
print(id(num), id(age))

list1 = [10, 20]
list2 = [10, 20]
print(id(list1), id(list2))

list3 = list1
print(id(list3), id(list1))

list3 = list1.copy()
print(id(list3), id(list1))

3. 怎么判断是否需要获取函数或者方法的结果

先看方法或者函数的功能有没有体现在对原数据的修改上,如果没有,那么这个方法或者函数就会有一个有效的结果来反馈函数的功能

list1 = [29, 25, 51, 75, 98]
# 获取使用结果:
result = list1.count(25)
print(result)
print(list1.count(25))
# 不获取、不适用方法的结果
list1.append(100)
print(list1)            # [29, 25, 51, 75, 98, 100]
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-07-24 11:23:48  更:2021-07-24 11:25:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/7 6:59:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码