常用示例¶
闰年
生肖
判断某年是什么生肖:year % 12
星座
猜数字
# 计算N个数之和
# 方法一
def sum_of_N(n):
sum = 0
for i in range(1, n+1):
sum = sum + 1
return sum
# 方法二
def sum_of_N():
return (n*(n+1))/2
import random
computer_number = random.randint(0, 101)
while True:
person_number = int(input("请输入:"))
if person_number > computer_number:
print("大了")
elif person_number < computer_number:
print("小了")
elif person_number == computer_number:
print("对了")
break
else:
print("奇了怪了")
快速求1~100所有整数之和¶
sum(range(1,101))
循环并带上索引¶
# 输入
_list = ["a", "b", "c", "d"]
# 输出
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]
# 一般写法
[(i, _list[i]) for i in range(len(_list))]
# 使用内置枚举函数
list(enumerate(_list))
- 使用枚举函数
# 斐波那契(Fibonacci)数列
# 释义:除第一个和第二个数外,任意一个数都可由前两个数相加得到
def fib(n):
x0,x1 = 0,1
while n>0:
yield x1
x0,x1 = x1,x0+x1
[i for i in fib(10)]
计算x的n次方¶
# 运算符
x**n
# 内置函数
pow(x,n)
# 自定义函数
def power(x, n):
r = 1
while n > 0:
r = r * x
n = n - 1
return r
# 闭包的方式
# 貌似叫偏函数
def nth_power(exponent):
def exponent_of(base):
return base ** exponent
return exponent_of
# 计算一个数的平方
square = nth_power(2) # 相当于square = exponent_of,且已知exponent=2
print(square(2)) # base=2
# 计算一个数的立方
cube = nth_power(3) # 相当于cube = exponent_of,且已知exponent=2
print(cube(2)) # base=2
阶乘¶
def factorial(input):
# 检查参数类型
if not isinstance(input, int):
raise Exception('input must be an integer.')
if input < 0:
raise Exception('input must be greater or equal to 0' )
# 递归实现阶乘
def inner_factorial(input):
if input <= 1:
return 1
return input * inner_factorial(input-1)
return inner_factorial(input)
# 之所以加了一层写嵌套,是为了在递归前只检查一次参数类型即可,不然写在递归函数里,每次递归都要检查,影响程序效率
print(factorial(5))
单词排序¶
_list = ['b', 'A', 'd', 'C']
# 忽略字母大小写(需要先把字母都变为大写或小写),倒序排列
sorted(_list, key=str.lower, reverse=True)
# 操作文件
# 第一种
try:
f=open("/path...","r") #只读模式打开
print(f.read())
finally:
if f:
f.close()
# 第二种
with open("../path...","r") as f:
print (f.read())
# 自动化脚本
import selenium from webdriver
b=webdriver.firefox() #打开浏览器
b.get("http://www.baidu.com") #输入地址
time.sleep(0.3) #0.3秒等待
b.find_element_by_id("kw").send_keys("xxx") #找到搜索框,输入xxx
b.find_element_by_id("su").click() #点击搜索按钮
b.quit() #推出浏览器
#爬虫
from urllib import request
class Spider():
url = 'https://www.panda.tv/cate/lol'
def __fetch_content(self):
r = request.urlopen(Spider.url)
htmls = r.read()
htmls = str(htmls, encoding='utf-8')
a=1
def go(self):
self.__fetch_content()
spider = Spider()
spider.go()
最后更新:
2021-11-29