天天看點

Python3中函數Lambda、os、int、format應用和樣例

作者:不易9093

一、Lambda

Lambda函數是Python中的一種匿名函數,它允許我們定義一個簡單的函數,而不需要定義一個完整的函數。Lambda函數通常用在函數式程式設計中,可以作為高階函數的參數。Lambda函數的文法如下:

lambda arguments: expression           

其中,arguments是函數的參數清單,expression是函數的傳回值表達式。Lambda函數的傳回值是一個函數對象,可以指派給一個變量或作為其他函數的參數使用。

Lambda函數的主要作用有以下幾個:

  1. 作為高階函數的參數,使代碼更加簡潔和易于了解。
  2. 可以用于快速定義簡單的函數,避免定義完整的函數,減少代碼量。
  3. 可以在需要函數對象作為參數的場合快速建立函數對象。

下面是一些使用Lambda函數的例子:

# 1. Lambda函數作為高階函數的參數
numbers = [1, 2, 3, 4, 5]
result = list(filter(lambda x: x % 2 == 0, numbers))
print(result)  # [2, 4]

# 2. 使用Lambda函數定義簡單函數
add = lambda x, y: x + y
print(add(3, 4))  # 7

# 3. Lambda函數作為其他函數的參數
numbers = [1, 2, 3, 4, 5]
result = reduce(lambda x, y: x * y, numbers)
print(result)  # 120           

在上面的例子中,第一個例子使用Lambda函數作為filter()函數的參數,過濾出清單中的偶數;第二個例子使用Lambda函數定義了一個簡單的加法函數;第三個例子使用Lambda函數作為reduce()函數的參數,計算清單中所有元素的積。這些例子展示了Lambda函數的不同用法,可以根據實際情況選擇使用。

Python3中函數Lambda、os、int、format應用和樣例

二、OS

Python3中的os子產品提供了許多與作業系統互動的函數。通過os子產品,我們可以通路檔案系統、程序管理、環境變量等作業系統相關的功能。下面介紹一些常見的os子產品函數。

  1. os.getcwd():擷取目前工作目錄
import os

current_dir = os.getcwd()
print(current_dir)           
  1. os.listdir(path):列出指定目錄下的所有檔案和子目錄
import os

files = os.listdir('.')
print(files)           
  1. os.mkdir(path):建立一個目錄
import os

os.mkdir('my_new_directory')           
  1. os.remove(path):删除一個檔案
import os

os.remove('my_file.txt')           
  1. os.rename(src, dst):重命名檔案或目錄
import os

os.rename('old_name.txt', 'new_name.txt')           
  1. os.path.isfile(path):判斷一個路徑是否為檔案
import os

is_file = os.path.isfile('/path/to/my_file.txt')
print(is_file)           
  1. os.path.isdir(path):判斷一個路徑是否為目錄
import os

is_dir = os.path.isdir('/path/to/my_directory')
print(is_dir)           

總之,os子產品提供了許多常用的作業系統相關功能,可以友善我們進行檔案和目錄操作、程序管理、環境變量等操作。

Python3中函數Lambda、os、int、format應用和樣例

三、int

函數int()是Python3内置函數之一,用于将一個數值或字元串轉換為整數。下面是一些使用int()函數的例子:

  1. 将字元串轉換為整數:
num_str = '123'
num_int = int(num_str)
print(num_int)  # output: 123           
  1. 将浮點數轉換為整數:
num_float = 3.14
num_int = int(num_float)
print(num_int)  # output: 3           
  1. 将二進制、八進制或十六進制的字元串轉換為整數:
num_bin = '0b1010'
num_oct = '0o123'
num_hex = '0xABC'
num_int1 = int(num_bin, 2)  # 将二進制字元串轉換為整數
num_int2 = int(num_oct, 8)  # 将八進制字元串轉換為整數
num_int3 = int(num_hex, 16)  # 将十六進制字元串轉換為整數
print(num_int1, num_int2, num_int3)  # output: 10 83 2748           
  1. 将布爾值轉換為整數:
bool_var = True
num_int = int(bool_var)
print(num_int)  # output: 1           

需要注意的是,當int()函數的參數為字元串時,字元串必須是合法的整數表示,否則會抛出ValueError異常。例如:

num_str = 'abc'
num_int = int(num_str)  # ValueError: invalid literal for int() with base 10: 'abc'           

總之,int()函數的作用是将一個數值或字元串轉換為整數,其功能可以幫助我們在程式中進行數值計算、位運算等操作。

Python3中函數Lambda、os、int、format應用和樣例

四、format

函數format()是Python3中用于格式化字元串的函數之一,它可以對字元串進行格式化,将字元串中的占位符替換為指定的值,并傳回一個新的格式化後的字元串。

format()函數的基本文法如下:

string.format(args)           

其中,string是要格式化的字元串,args則是要替換占位符的參數。

format()函數支援多種格式化方式,以下是常用的幾種:

  1. 位置參數格式化

位置參數格式化是最基本的一種格式化方式,通過花括号({})來表示占位符,其中花括号中的數字表示要替換的參數的位置。

# 位置參數格式化
name = 'Tom'
age = 18
print('My name is {}, I am {} years old.'.format(name, age))           

輸出結果為:

My name is Tom, I am 18 years old.           
  1. 關鍵字參數格式化

關鍵字參數格式化是一種更為友善的格式化方式,可以通過指定參數名來替換占位符。

# 關鍵字參數格式化
print('My name is {name}, I am {age} years old.'.format(name='Tom', age=18))           

輸出結果為:

My name is Tom, I am 18 years old.           
  1. 索引參數格式化

索引參數格式化是一種比較靈活的格式化方式,可以通過指定參數的索引來替換占位符。

# 索引參數格式化
print('My name is {0}, I am {1} years old.'.format('Tom', 18))           

輸出結果為:

My name is Tom, I am 18 years old.           
  1. 格式化類型

格式化類型是指對參數進行格式化的方式,常見的格式化類型有以下幾種:

  • 字元串格式化類型:s
  • 整數格式化類型:d
  • 浮點數格式化類型:f
  • 科學計數法格式化類型:e或E
# 格式化類型
print('My name is {:s}, I am {:d} years old.'.format('Tom', 18))
print('My height is {:.2f}m, my weight is {:.2f}kg.'.format(1.75, 65.5))
print('The value of pi is approximately {:e}.'.format(3.1415926))           

輸出結果為:

My name is Tom, I am 18 years old.
My height is 1.75m, my weight is 65.50kg.
The value of pi is approximately 3.141593e+00.           

除了以上幾種格式化方式外,format()函數還支援其他更為複雜的格式化方式,如填充、對齊、寬度等,可以根據實際需要進行使用。

總之,format()函數是Python字元串格式化的重要工具之一,可以幫助我們更加友善地進行字元串格式化操作,提高代碼的可讀性和可維護性。