整理字符串输入

整理用户输入的问题在编程过程中极为常见。通常情况下,将字符转换为小写或大写就够了,有时你可以使用正则表达式模块「Regex」完成这项工作。但是如果问题很复杂,可能有更好的方法来解决:

user_input = "This\nstring has\tsome whitespaces...\r\n" character_map = {     ord('\n') : ' ',     ord('\t') : ' ',     ord('\r') : None } user_input.translate(character_map)  # This string has some whitespaces... 

Python 计算三角形的面积

# -*- coding: UTF-8 -*- # Filename : test.py # author by : www.runoob.com a = float(input('输入三角形第一边长: ')) b = float(input('输入三角形第二边长: ')) c = float(input('输入三角形第三边长: ')) # 计算半周长 s = (a + b + c) / 2 # 计算面积 area = (s*(s-a)*(s-b)*(s-c)) ** 0.5 print('三角形面积为 %0.2f' %area) 执行以上代码输出结果为: $ python test.py 输入三角形第一边长: 5 输入三角形第二边长: 6 输入三角形第三边长: 7 三角形面积为 14.70

迭代器切片(Slice)

如果对迭代器进行切片操作,会返回一个「TypeError」,提示生成器对象没有下标,但是我们可以用一个简单的方案来解决这个问题:

import itertools   s = itertools.islice(range(50), 10, 20) for val in s:       ... 

我们可以使用「itertools.islice」创建一个「islice」对象,该对象是一个迭代器,可以产生我们想要的项。但需要注意的是,该操作要使用切片之前的所有生成器项,以及「islice」对象中的所有项。

Python 判断奇数偶数

# Filename : test.py # author by : www.runoob.com # Python 判断奇数偶数 # 如果是偶数除于 2 余数为 0 # 如果余数为 1 则为奇数 num = int(input("输入一个数字: ")) if (num % 2) == 0: print("{0} 是偶数".format(num)) else: print("{0} 是奇数".format(num)) 我们也可以使用内嵌 if 语句来实现: 执行以上代码输出结果为: 输入一个数字: 3 3 是奇数

Python 阶乘实例

#!/usr/bin/python3 # Filename : test.py # author by : www.runoob.com # 通过用户输入数字计算阶乘 # 获取用户输入的数字 num = int(input("请输入一个数字: ")) factorial = 1 # 查看数字是负数,0 或 正数 if num < 0: print("抱歉,负数没有阶乘") elif num == 0: print("0 的阶乘为 1") else: for i in range(1,num + 1): factorial = factorial*i print("%d 的阶乘为 %d" %(num,factorial)) 执行以上代码输出结果为: 请输入一个数字: 3 3 的阶乘为 6

Python 最小公倍数算法

# Filename : test.py # author by : www.runoob.com # 定义函数 def lcm(x, y): # 获取最大的数 if x > y: greater = x else: greater = y while(True): if((greater % x == 0) and (greater % y == 0)): lcm = greater break greater += 1 return lcm # 获取用户输入 num1 = int(input("输入第一个数字: ")) num2 = int(input("输入第二个数字: ")) print( num1,"和", num2,"的最小公倍数为", lcm(num1, num2)) 执行以上代码输出结果为: 输入第一个数字: 54 输入第二个数字: 24 54 和 24 的最小公倍数为 216

Python 选择排序

import sys A = [64, 25, 12, 22, 11] for i in range(len(A)): min_idx = i for j in range(i+1, len(A)): if A[min_idx] > A[j]: min_idx = j A[i], A[min_idx] = A[min_idx], A[i] print ("排序后的数组:") for i in range(len(A)): print("%d" %A[i]), 执行以上代码输出结果为: 排序后的数组: 11 12 22 25 64



案例太多就不一一展示了,我把它们放在文件夹,并且还有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。