快速生成等差数列
arithmetic_sequence = list(range(1, 10, 2))
print(arithmetic_sequence)
# Output: [1, 3, 5, 7, 9]
这里我们使用了 Python 的内置函数 range() 来生成等差数列,其中 range(start, stop, step) 函数返回一个从 start 开始、步长为 step、不包含 stop 的序列。然后通过 list() 将其转换为列表。
一键反转字符串
string = "hello"
reversed_string = string[::-1]
print(reversed_string)
# Output: "olleh"
一行实现列表去重
original_list = [1, 2, 2, 3, 3, 4, 5]
unique_list = list(set(original_list))
print(unique_list)
# Output: [1, 2, 3, 4, 5]
这里将列表转换为集合,集合的特性是元素唯一性,然后再转换回列表,这样就去除了重复元素。
简洁计算阶乘
import math
n = 5
factorial = math.factorial(n)
print(factorial)
# Output: 120
使用 Python 的内置模块 math 中的 factorial() 函数可以直接计算阶乘。
math.factorial()
方法是数学模块的库方法,用于查找给定数字的阶乘,它接受正整数并返回数字的阶乘。
# Python code to demonstrate example of
# math.factorial() method
# importing math module
import math
# numbers
a = 0
b = 1
c = 6
d = 13
# printing factorial
print("factorial of ", a, " is = ", math.factorial(a))
print("factorial of ", b, " is = ", math.factorial(b))
print("factorial of ", c, " is = ", math.factorial(c))
print("factorial of ", d, " is = ", math.factorial(d))
输出
factorial of 0 is = 1
factorial of 1 is = 1
factorial of 6 is = 720
factorial of 13 is = 6227020800
轻松统计字符串中单词出现次数
text = "this is a test test string string"
word_counts = {word: text.split().count(word) for word in set(text.split())}
print(word_counts)
# Output: {'is': 1, 'string': 2, 'a': 1, 'this': 1, 'test': 2}
这里使用了字典推导式和 split() 方法,首先将字符串拆分为单词列表,然后使用 count() 方法统计每个单词出现的次数。
一行代码实现斐波那契数列
fibonacci = lambda n: n if n <= 1 else fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(5))
# Output: 5
这是一个使用 lambda 表达式定义的递归函数,计算斐波那契数列。但需要注意的是,递归实现的效率不高,对于大的 n 可能会导致性能问题。
快速交换两个变量值
a, b = 1, 2
a, b = b, a
print(a, b)
# Output: 2 1
Python 中的元组解包使得交换变量值变得非常简洁。
一行代码求最大公约数(GCD)
import math
a,b = 12,8
gcd = math.gcd(a,b)
print(gcd)
使用 Python 内置模块math 中的 gcd() 函数来求最大公约数