0
点赞
收藏
分享

微信扫一扫

python基础方法与函数使用(format函数、lambda函数)



文章目录

  • python 基础方法与函数
  • format 函数案例
  • lambda 函数案例


python 基础方法与函数

分类

方法

说明

format函数

python中format函数用于字符串的格式化

分类

方法

说明

精度控制 :.nf

print('{关键字1}{关键字2}'.format(关键字1,关键字2))

通过关键字

print('{0}在{1}'.format('某某人','写代码'))

通过位置

print('{:^30}'.format("zhangsan"))

居中对齐 填充和对齐^<>分别表示居中、左对齐、右对齐,后面带宽度

print('{:>30}'.format("zhangsan"))

右对齐 填充和对齐^<>分别表示居中、左对齐、右对齐,后面带宽度

print('{:<30}'.format("zhangsan"))

左对齐 填充和对齐^<>分别表示居中、左对齐、右对齐,后面带宽度

print('{:.2f}'.format(3.14159))

保留两位小数,两位后四舍五入

print('{:.5f}'.format(3.14))

保留5位小数,不足补0.

print('{:b}'.format(20))

进制转化,b o d x 分别表示二、八、十、十六进制

print('{:o}'.format(20))

进制转化,b o d x 分别表示二、八、十、十六进制

print('{:d}'.format(20))

进制转化,b o d x 分别表示二、八、十、十六进制

print('{:x}'.format(20))

进制转化,b o d x 分别表示二、八、十、十六进制

分类

方法

说明

千位分隔符::,

print('{:,}'.format(100000000))

插入千分号分隔符

print('{:,}'.format(123456.123456))

插入千分号分隔符

eval函数

将字符串当成有效表达式来求值并返回计算结果

在开发时不要使用eval()函数直接转换input的结果

# 基本的数学计算

print(eval("1 + 1")) # 2

# 字符串重复

print(eval("'*' * 10")) # **********

# 将字符串转换成列表

print(type(eval("[1, 2, 3, 4, 5]"))) # <class 'list'>

# 将字符串转换成字典

print(type(eval("{'name': 'xiaoming', 'age': 18}"))) # <class 'dict'>

lambda函数介绍

有时在使用函数时不需要给函数分配一个名称,该函数就是 “匿名函数”。在Python中使用lambda表达式表示匿名函数

lambda函数与 def 函数的区别

lambda可以立刻传递(无需变量) ,自动返回结果;

lambda在内部只能包含一行代码 ;

lambda是一个为编写简单的函数而设计的,而 def 用来处理更大的任务;

lambda可以定义一个匿名函数,而 def 定义的函数必须有一个名字。

lambda函数的优势:

对于单行函数,使用 lambda表达式可以省去定义函数的过程,让代码更加简洁;对于不需要多次复用的函数,使用 lambda表达式可以在用完之后立即释放,提高程序执行的性能。

format 函数案例

通过关键字

print('{name}在{option}'.format(name="某某人",option="写代码"))

通过位置

print('name={} path={}'.format('zhangsan', '/')
print('{1}在{0}'.format('写代码','某某人'))
print('{0}在{1}'.format('某某人','写代码'))

lambda 函数案例

  • 定义加法函数

# def函数写法
def add(a, b):
    return a + b


print(add(10, 20))
print("----------这是一个分割线----------")

# lambda函数写法
add_lambda = lambda a, b: a + b
print(add_lambda(10, 20))

  • 使用if判断奇偶性

# def函数写法
def get_odd_even(x):
    if x % 2 == 0:
        return "偶数"
    else:
        return "奇数"


print(get_odd_even(10))
print("----------这是一个分割线----------")

# lambda函数写法
get_odd_even1 = lambda x: "偶数" if x % 2 == 0 else "奇数"
print(get_odd_even1(10))
print(get_odd_even1(9))

  • 无参数表达式

# def函数写法
def test1():
    return "Python YYDS!!!"


print(test1())
print("----------这是一个分割线----------")

# lambda函数写法
test2 = lambda: "Python YYDS!!!"
print(test2())

  • 列表排序

map方法混搭(常用):(遍历序列,对序列中每个元素进行操作,最终获得新的序列)

# def函数写法
def add(num):
    return num ** 2


x = map(add, [1, 2, 3, 4, 5])
print(list(x))
print("----------这是一个分割线----------")

# lambda函数写法
y = map(lambda num: num ** 2, [1, 2, 3, 4, 5])
print(list(y))


举报

相关推荐

0 条评论