
Python学习笔记
2022年5月14日学习笔记- 一、format格式化函数
- (一)format 函数可以接受不限个参数,位置可以不按顺序:
- (二)也可以设置参数:
- (三)也可以向 str.format() 传入对象:
- (四)数字格式化
- 二、eval()函数
- (一)描述
- (二)语法
- 三、切片和索引
- (一)1个参数
- (二)2个参数
- (三)3个参数
- 四、保留字
一、format格式化函数 (一)format 函数可以接受不限个参数,位置可以不按顺序:
实例
"{} {}".format("hello", "world") # 不设置指定位置,按默认顺序
'hello world'
"{0} {1}".format("hello", "world") # 设置指定位置
'hello world'
"{1} {0} {1}".format("hello", "world") # 设置指定位置
'world hello world'
(二)也可以设置参数:
实例
print("网站名:{name}, 地址 {url}".format(name="菜鸟教程", url="www.runoob.com"))
# 通过字典设置参数
site = {"name": "菜鸟教程", "url": "www.runoob.com"}
print("网站名:{name}, 地址 {url}".format(**site))# "**" 是必须的
# 通过列表索引设置参数
my_list = ['菜鸟教程', 'www.runoob.com']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list)) # "0" 是必须的
输出结果为:
网站名:菜鸟教程, 地址 www.runoob.com
网站名:菜鸟教程, 地址 www.runoob.com
网站名:菜鸟教程, 地址 www.runoob.com
(三)也可以向 str.format() 传入对象:
实例
class AssignValue(object):
def __init__(self, value):
self.value = value
my_value = AssignValue(6)
print('value 为: {0.value}'.format(my_value)) # "0" 是可选的
输出结果为:
value 为: 6
(四)数字格式化
print("{:.2f}".format(3.1415926))
3.14
| 数字 | 格式 | 输出 | 描述 |
|---|---|---|---|
| 3.1415926 | {:.2f} | 3.14 | 保留小数点后两位 |
| 3.1415926 | {:+.2f} | +3.14 | 带符号保留小数点后两位 |
| -1 | {:+.2f} | -1.00 | 带符号保留小数点后两位 |
| 2.71828 | {:.0f} | 3 | 不带小数 |
^, <, > 分别是居中、左对齐、右对齐,后面带宽度,
: 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。
+表示在正数前显示 +,负数前显示 -; (空格)表示在正数前加空格
此外我们可以使用大括号 {} 来转义大括号,如下实例:
实例
print ("{} 对应的位置是 {{0}}".format("runoob"))
输出结果为:
runoob 对应的位置是 {0}
二、eval()函数
(一)描述
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
(二)语法eval(expression[,globals[,locals]])
expression – 表达式。
globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
实例
>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85
三、切片和索引
使用保留字 in 判断一个元素是否在列表中
| A | B | C | D | E | F | G | H | I | J |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| -10 | -9 | -8 | -7 | -6 | -5 | -4 | -3 | -2 | -1 |
数组N=[‘A’,‘B’,‘C’,‘D’,‘E’,‘F’,‘G’,‘H’,‘I’,‘J’]
索引:取出数组N中第3个元素:x=N[2]
切片:用极少的代码将数组元素按需处理的一种方法。切片最少有1个参数,最多有3个参数,演示如下:
注意:切片如N[1:-1],则只返回1——-2对应的元素,-1对应的元素不返回
(一)1个参数- N[1:]——从下标为1的元素选择到最后一个元素,返回[‘B’,‘C’,‘D’,‘E’,‘F’,‘G’,‘H’,‘I’,‘J’]
- N[:3]——从下标为0的元素选择到下标为2的元素,不包括下标3的元素,返回[‘A’,‘B’,‘C’]
- N[::2]——从下标为0的元素开始,返回所有下标数能被2整除所对应的列表元素
- N[::-1]——逆序输出所有元素,返回[‘J’, ‘I’, ‘H’, ‘G’, ‘F’, ‘E’, ‘D’, ‘C’, ‘B’, ‘A’]
说明:如果前2个参数中有任何一个为负数,那么,分2种情况:
如果负数 小于 -n,那么就给负数归0,如果仅仅在-n~0,那么就将这个数理解为0 ~ n-1之间转圈圈就可以了。负数转圈的算法,很简单,就不说了
- N[1:-2]——从下标1开始,到下标(n-1)之前的所有元素,返回[‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’]
- N[-2:3]——当第一个参数经过计算其下标大于等于后一个,返回空数组[]
- N[-13:3]——参见上面第一个说明,第一个参数归0,返回[‘A’, ‘B’, ‘C’]
N[M:N:K],M、N没有给出的情况下表示从开头到结尾
- N[::-1]——从头到尾,将数组反转,返回[‘J’, ‘I’, ‘H’, ‘G’, ‘F’, ‘E’, ‘D’, ‘C’, ‘B’, ‘A’]
- N[-1::-2]——从尾到头,每隔一个元素,选择一个元素,返回[‘J’, ‘H’, ‘F’, ‘D’, ‘B’]
说明:没有第3个参数时,切片只能从左向右,此时若第一个参数大于等于第二个参数,则返回空数组
说明:第三个参数<0时,切片方向可以被改变,此时没有上述限制
四、保留字| 序号 | 保留字 | 说明 |
|---|---|---|
| 1 | and | 逻辑与 *** 作,用于表达式运算 |
| 2 | as | 用于转换数据类型 |
| 3 | assert | 用于判断变量或条件表达式的结果 |
| 4 | async | 用于启用异步 *** 作 |
| 5 | await | 用于异步 *** 作中等待协程返回 |
| 6 | break | 中断循环语句的执行 |
| 7 | class | 定义类 |
| 8 | continue | 继续执行下一次循环 |
| 9 | def | 定义函数或方法 |
| 10 | del | 删除变量或序列的值 |
| 11 | elif | 条件语句,与 if、else 结合使用 |
| 12 | else | 条件语句,与 if、else 结合使用;也可用于异常或循环语句 |
| 13 | except | 包含捕获异常后的处理代码块,与 try、finally 结合使用 |
| 14 | False | 含义为“假”的逻辑值 |
| 15 | finally | 包含捕获异常后的始终要调用的代码块,与 try、except 结合使用 |
| 16 | for | 循环语句 |
| 17 | from | 用于导入模块,与 import 结合使用 |
| 18 | global | 用于在函数或其他局部作用域中使用全局变量 |
| 19 | if | 条件语句,与 elif、else 结合使用 |
| 20 | import | 导入模块,与 from 结合使用 |
| 21 | in | 判断变量是否在序列中 |
| 22 | is | 判断变量是否为某个类的实例 |
| 23 | lambda | 定义匿名函数 |
| 24 | None | 表示一个空对象或是一个特殊的空值 |
| 25 | nonlocal | 用于在函数或其他作用域中使用外层(非全局)变量 |
| 26 | not | 逻辑非 *** 作,用于表达式运算 |
| 27 | or | 逻辑或 *** 作,用于表达式运算 |
| 28 | pass | 空的类、方法或函数的占位符 |
| 29 | raise | 用于抛出异常 |
| 30 | return | 从函数返回计算结果 |
| 31 | True | 含义为“真”的逻辑值 |
| 32 | try | 测试执行可能出现异常的代码,与 except, finally 结合使用 |
| 33 | while | 循环语句 |
| 34 | with | 简化 Python 的语句 |
| 35 | yield | 从函数依次返回值 |
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)