当前位置: 移动技术网 > IT编程>脚本编程>Python > 浅谈如何编程Python3——Python实例

浅谈如何编程Python3——Python实例

2020年03月17日  | 移动技术网IT编程  | 我要评论

x-龙时代,全屋优品,羽扬微博门所有截图

  • python hello world 实例
  • python 数字求和
  • python 平方根
  • python 二次方程
  • python 计算三角形的面积
  • python 计算圆的面积
  • python 随机数生成
  • python 摄氏温度转华氏温度
  • python 交换变量
  • python if 语句
  • python 判断字符串是否为数字
  • python 判断奇数偶数
  • python 判断闰年
  • python 获取最大值函数
  • python 质数判断
  • python 输出指定范围内的素数
  • python 阶乘实例
  • python 九九乘法表
  • python 斐波那契数列
  • python 阿姆斯特朗数
  • python 十进制转二进制、八进制、十六进制
  • python ascii码与字符相互转换
  • python 最大公约数算法
  • python 最小公倍数算法
  • python 简单计算器实现
  • python 生成日历
  • python 使用递归斐波那契数列
  • python 文件 io
  • python 字符串判断
  • python 字符串大小写转换
  • python 计算每个月天数
  • python 获取昨天日期
  • python list 常用操作
  • python 约瑟夫生者死者小游戏
  • python 五人分鱼
  • python 实现秒表功能
  • python 计算 n 个自然数的立方和
  • python 计算数组元素之和
  • python 数组翻转指定个数的元素

 

python hello world 实例

以下实例为学习python的第一个实例,即如何输出"hello world!":

# filename : helloworld.py
# author by : www.runoob.com

# 该实例输出 hello world!
print('hello world!')

执行以上代码输出结果为:

hello world!

python 数字求和

以下实例为通过用户输入两个数字,并计算两个数字之和:

# filename : test.py
# author by : www.runoob.com
 
# 用户输入数字
num1 = input('输入第一个数字:')
num2 = input('输入第二个数字:')
 
# 求和
sum = float(num1) + float(num2)
 
# 显示计算结果
print('数字 {0} 和 {1} 相加结果为: {2}'.format(num1, num2, sum))

执行以上代码输出结果为:

输入第一个数字:1.5
输入第二个数字:2.5
数字 1.5 和 2.5 相加结果为: 4.0

python 平方根

平方根,又叫二次方根,表示为〔√ ̄〕,如:数学语言为:√ ̄16=4。语言描述为:根号下16=4。

以下实例为通过用户输入一个数字,并计算这个数字的平方根:

# filename : test.py
# author by : www.runoob.com
 
num = float(input('请输入一个数字: '))
num_sqrt = num ** 0.5
print(' %0.3f 的平方根为 %0.3f'%(num ,num_sqrt))

执行以上代码输出结果为:

$ python test.py 
请输入一个数字: 4
 4.000 的平方根为 2.000

python 二次方程

以下实例为通过用户输入数字,并计算二次方程:

# 二次方程式 ax**2 + bx + c = 0
# a、b、c 用户提供,为实数,a ≠ 0
 
# 导入 cmath(复杂数学运算) 模块
import cmath
 
a = float(input('输入 a: '))
b = float(input('输入 b: '))
c = float(input('输入 c: '))
 
# 计算
d = (b**2) - (4*a*c)
 
# 两种求解方式
sol1 = (-b-cmath.sqrt(d))/(2*a)
sol2 = (-b+cmath.sqrt(d))/(2*a)
 
print('结果为 {0} 和 {1}'.format(sol1,sol2))

执行以上代码输出结果为:

$ python test.py 
输入 a: 1
输入 b: 5
输入 c: 6
结果为 (-3+0j) 和 (-2+0j)

该实例中,我们使用了 cmath (complex math) 模块的 sqrt() 方法 来计算平方根。


python 计算三角形的面积

# 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

python 计算圆的面积

圆的面积公式为 :

公式中 r 为圆的半径。

# 定义一个方法来计算圆的面积
def findarea(r):
    pi = 3.142
    return pi * (r*r)
 
# 调用方法
print("圆的面积为 %.6f" % findarea(5))

以上实例输出结果为:

圆的面积为 78.550000

python 随机数生成

以下实例演示了如何生成一个随机数:

 
# filename : test.py
# author by : www.runoob.com
 
# 生成 0 ~ 9 之间的随机数
 
# 导入 random(随机数) 模块
import random
 
print(random.randint(0,9))

执行以上代码输出结果为:4

以上实例我们使用了 random 模块的 randint() 函数来生成随机数,你每次执行后都返回不同的数字(0 到 9),该函数的语法为:

random.randint(a,b)

函数返回数字 n ,n 为 a 到 b 之间的数字(a <= n <= b),包含 a 和 b。


python 摄氏温度转华氏温度

以下实例演示了如何将摄氏温度转华氏温度:

# filename : test.py
# author by : www.runoob.com
 
# 用户输入摄氏温度
 
# 接收用户输入
celsius = float(input('输入摄氏温度: '))
 
# 计算华氏温度
fahrenheit = (celsius * 1.8) + 32
print('%0.1f 摄氏温度转为华氏温度为 %0.1f ' %(celsius,fahrenheit))

执行以上代码输出结果为:

输入摄氏温度: 38
38.0 摄氏温度转为华氏温度为 100.4 

以上实例中,摄氏温度转华氏温度的公式为 celsius * 1.8 = fahrenheit - 32。所以得到以下式子:

celsius = (fahrenheit - 32) / 1.8

python 交换变量

以下实例通过用户输入两个变量,并相互交换:

# filename : test.py
# author by : www.runoob.com
 
# 用户输入
 
x = input('输入 x 值: ')
y = input('输入 y 值: ')
 
# 创建临时变量,并交换
temp = x
x = y
y = temp
 
print('交换后 x 的值为: {}'.format(x))
print('交换后 y 的值为: {}'.format(y))

执行以上代码输出结果为:

输入 x 值: 2
输入 y 值: 3
交换后 x 的值为: 3
交换后 y 的值为: 2

以上实例中,我们创建了临时变量 temp ,并将 x 的值存储在 temp 变量中,接着将 y 值赋给 x,最后将 temp 赋值给 y 变量。


python if 语句

以下实例通过使用 if...elif...else 语句判断数字是正数、负数或零:

# 用户输入数字
 
num = float(input("输入一个数字: "))
if num > 0:
   print("正数")
elif num == 0:
   print("零")
else:
   print("负数")

执行以上代码输出结果为:

输入一个数字: 3
正数

我们也可以使用内嵌 if 语句来实现:

# 内嵌 if 语句
 
num = float(input("输入一个数字: "))
if num >= 0:
   if num == 0:
       print("零")
   else:
       print("正数")
else:
   print("负数")

执行以上代码输出结果为:

输入一个数字: 0
零

python 判断字符串是否为数字

以下实例通过创建自定义函数 is_number() 方法来判断字符串是否为数字:

# filename : test.py
# author by : www.runoob.com
 
def is_number(s):
    try:
        float(s)
        return true
    except valueerror:
        pass
 
    try:
        import unicodedata
        unicodedata.numeric(s)
        return true
    except (typeerror, valueerror):
        pass
 
    return false
 
# 测试字符串和数字
print(is_number('foo'))   # false
print(is_number('1'))     # true
print(is_number('1.3'))   # true
print(is_number('-1.37')) # true
print(is_number('1e3'))   # true
 
# 测试 unicode
# 阿拉伯语 5
print(is_number('٥'))  # true
# 泰语 2
print(is_number('๒'))  # true
# 中文数字
print(is_number('四')) # true
# 版权号
print(is_number('©'))  # false

我们也可以使用内嵌 if 语句来实现:

执行以上代码输出结果为:

false
true
true
true
true
true
true
true
false

python 判断奇数偶数

下实例用于判断一个数字是否为奇数或偶数:

# python 判断奇数偶数
# 如果是偶数除于 2 余数为 0
# 如果余数为 1 则为奇数
 
num = int(input("输入一个数字: "))
if (num % 2) == 0:
   print("{0} 是偶数".format(num))
else:
   print("{0} 是奇数".format(num))

我们也可以使用内嵌 if 语句来实现:

执行以上代码输出结果为:

输入一个数字: 3
3 是奇数

python 判断闰年

以下实例用于判断用户输入的年份是否为闰年:

year = int(input("输入一个年份: "))
if (year % 4) == 0:
   if (year % 100) == 0:
       if (year % 400) == 0:
           print("{0} 是闰年".format(year))   # 整百年能被400整除的是闰年
       else:
           print("{0} 不是闰年".format(year))
   else:
       print("{0} 是闰年".format(year))       # 非整百年能被4整除的为闰年
else:
   print("{0} 不是闰年".format(year))

我们也可以使用内嵌 if 语句来实现:

执行以上代码输出结果为:

输入一个年份: 2000
2000 是闰年

输入一个年份: 2011
2011 不是闰年

python 获取最大值函数

以下实例中我们使用max()方法求最大值:

# 最简单的
print(max(1, 2))
print(max('a', 'b'))
 
# 也可以对列表和元组使用
print(max([1,2]))
print(max((1,2)))
 
# 更多实例
print("80, 100, 1000 最大值为: ", max(80, 100, 1000))
print("-20, 100, 400最大值为: ", max(-20, 100, 400))
print("-80, -20, -10最大值为: ", max(-80, -20, -10))
print("0, 100, -400最大值为:", max(0, 100, -400))

执行以上代码输出结果为:

2
b
2
2
80, 100, 1000 最大值为:  1000
-20, 100, 400最大值为:  400
-80, -20, -10最大值为:  -10
0, 100, -400最大值为: 100

python 质数判断

一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了1和它本身以外不再有其他的因数。

# python 程序用于检测用户输入的数字是否为质数
 
# 用户输入数字
num = int(input("请输入一个数字: "))
 
# 质数大于 1
if num > 1:
   # 查看因子
   for i in range(2,num):
       if (num % i) == 0:
           print(num,"不是质数")
           print(i,"乘于",num//i,"是",num)
           break
   else:
       print(num,"是质数")
       
# 如果输入的数字小于或等于 1,不是质数
else:

执行以上代码输出结果为:

$ python3 test.py 
请输入一个数字: 1
1 不是质数
$ python3 test.py 
请输入一个数字: 4
4 不是质数
2 乘于 2 是 4
$ python3 test.py 
请输入一个数字: 5
5 是质数

python 输出指定范围内的素数

素数(prime number)又称质数,有无限个。除了1和它本身以外不再被其他的除数整除。

以下实例可以输出指定范围内的素数:

# 输出指定范围内的素数
 
# take input from the user
lower = int(input("输入区间最小值: "))
upper = int(input("输入区间最大值: "))
 
for num in range(lower,upper + 1):
    # 素数大于 1
    if num > 1:
        for i in range(2,num):
            if (num % i) == 0:
                break
        else:
            print(num)

执行以上程序,输出结果为:

$ python3 test.py 
输入区间最小值: 1
输入区间最大值: 100
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

python 阶乘实例

整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,0的阶乘为1。即:n!=1×2×3×...×n。

# 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
 
# 九九乘法表
for i in range(1, 10):
    for j in range(1, i+1):
        print('{}x{}={}\t'.format(j, i, i*j), end='')
    print()

执行以上代码输出结果为:

1x1=1    
1x2=2    2x2=4    
1x3=3    2x3=6    3x3=9    
1x4=4    2x4=8    3x4=12    4x4=16    
1x5=5    2x5=10    3x5=15    4x5=20    5x5=25    
1x6=6    2x6=12    3x6=18    4x6=24    5x6=30    6x6=36    
1x7=7    2x7=14    3x7=21    4x7=28    5x7=35    6x7=42    7x7=49    
1x8=8    2x8=16    3x8=24    4x8=32    5x8=40    6x8=48    7x8=56    8x8=64    
1x9=9    2x9=18    3x9=27    4x9=36    5x9=45    6x9=54    7x9=63    8x9=72    9x9=81

过指定end参数的值,可以取消在末尾输出回车符,实现不换行。


python 斐波那契数列

斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13,特别指出:第0项是0,第1项是第一个1。从第三项开始,每一项都等于前两项之和。

python 实现斐波那契数列代码如下:

# filename : test.py
# author by : www.runoob.com
 
# python 斐波那契数列实现
 
# 获取用户输入数据
nterms = int(input("你需要几项?"))
 
# 第一和第二项
n1 = 0
n2 = 1
count = 2
 
# 判断输入的值是否合法
if nterms <= 0:
   print("请输入一个正整数。")
elif nterms == 1:
   print("斐波那契数列:")
   print(n1)
else:
   print("斐波那契数列:")
   print(n1,",",n2,end=" , ")
   while count < nterms:
       nth = n1 + n2
       print(nth,end=" , ")
       # 更新值
       n1 = n2
       n2 = nth
       count += 1

执行以上代码输出结果为:

你需要几项? 10
斐波那契数列:
0 , 1 , 1 , 2 , 3 , 5 , 8 , 13 , 21 , 34 ,

 


python 阿姆斯特朗数

如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。 例如1^3 + 5^3 + 3^3 = 153。

1000以内的阿姆斯特朗数: 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407。

以下代码用于检测用户输入的数字是否为阿姆斯特朗数:

# python 检测用户输入的数字是否为阿姆斯特朗数
 
# 获取用户输入的数字
num = int(input("请输入一个数字: "))
 
# 初始化变量 sum
sum = 0
# 指数
n = len(str(num))
 
# 检测
temp = num
while temp > 0:
   digit = temp % 10
   sum += digit ** n
   temp //= 10
 
# 输出结果
if num == sum:
   print(num,"是阿姆斯特朗数")
else:
   print(num,"不是阿姆斯特朗数")

执行以上代码输出结果为:

$ python3 test.py 
请输入一个数字: 345
345 不是阿姆斯特朗数

$ python3 test.py 
请输入一个数字: 153
153 是阿姆斯特朗数

$ python3 test.py 
请输入一个数字: 1634
1634 是阿姆斯特朗数

获取指定期间内的阿姆斯特朗数

# 获取用户输入数字
lower = int(input("最小值: "))
upper = int(input("最大值: "))
 
for num in range(lower,upper + 1):
   # 初始化 sum
   sum = 0
   # 指数
   n = len(str(num))
 
   # 检测
   temp = num
   while temp > 0:
       digit = temp % 10
       sum += digit ** n
       temp //= 10
 
   if num == sum:
       print(num)

执行以上代码输出结果为:

最小值: 1
最大值: 10000
1
2
3
4
5
6
7
8
9
153
370
371
407
1634
8208
9474

以上实例中我们输出了 1 到 10000 之间的阿姆斯特朗数。


 

python 十进制转二进制、八进制、十六进制

以下代码用于实现十进制转二进制、八进制、十六进制:

# filename : test.py
# author by : www.runoob.com
 
# 获取用户输入十进制数
dec = int(input("输入数字:"))
 
print("十进制数为:", dec)
print("转换为二进制为:", bin(dec))
print("转换为八进制为:", oct(dec))
print("转换为十六进制为:", hex(dec))

执行以上代码输出结果为:

python3 test.py 
输入数字:5
十进制数为:5
转换为二进制为: 0b101
转换为八进制为: 0o5
转换为十六进制为: 0x5


python3 test.py 
输入数字:12
十进制数为:12
转换为二进制为: 0b1100
转换为八进制为: 0o14
转换为十六进制为: 0xc

python ascii码与字符相互转换

# 用户输入字符
c = input("请输入一个字符: ")
 
# 用户输入ascii码,并将输入的数字转为整型
a = int(input("请输入一个ascii码: "))
 
 
print( c + " 的ascii 码为", ord(c))
print( a , " 对应的字符为", chr(a))

执行以上代码输出结果为:

python3 test.py 
请输入一个字符: a
请输入一个ascii码: 101
a 的ascii 码为 97
101  对应的字符为 e

python 最大公约数算法

以下代码用于实现最大公约数算法:

# 定义一个函数
def hcf(x, y):
   """该函数返回两个数的最大公约数"""
 
   # 获取最小值
   if x > y:
       smaller = y
   else:
       smaller = x
 
   for i in range(1,smaller + 1):
       if((x % i == 0) and (y % i == 0)):
           hcf = i
 
   return hcf
 
 
# 用户输入两个数字
num1 = int(input("输入第一个数字: "))
num2 = int(input("输入第二个数字: "))
 
print( num1,"和", num2,"的最大公约数为", hcf(num1, num2))

执行以上代码输出结果为:

输入第一个数字: 54
输入第二个数字: 24
54 和 24 的最大公约数为 6

python 最小公倍数算法

以下代码用于实现最小公倍数算法:

# 定义函数
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 简单计算器实现

以下代码用于实现简单计算器实现,包括两个数基本的加减乘除运输:

# 定义函数
def add(x, y):
   """相加"""
 
   return x + y
 
def subtract(x, y):
   """相减"""
 
   return x - y
 
def multiply(x, y):
   """相乘"""
 
   return x * y
 
def divide(x, y):
   """相除"""
 
   return x / y
 
# 用户输入
print("选择运算:")
print("1、相加")
print("2、相减")
print("3、相乘")
print("4、相除")
 
choice = input("输入你的选择(1/2/3/4):")
 
num1 = int(input("输入第一个数字: "))
num2 = int(input("输入第二个数字: "))
 
if choice == '1':
   print(num1,"+",num2,"=", add(num1,num2))
 
elif choice == '2':
   print(num1,"-",num2,"=", subtract(num1,num2))
 
elif choice == '3':
   print(num1,"*",num2,"=", multiply(num1,num2))
 
elif choice == '4':
   print(num1,"/",num2,"=", divide(num1,num2))
else:
   print("非法输入")

执行以上代码输出结果为:

选择运算:
1、相加
2、相减
3、相乘
4、相除
输入你的选择(1/2/3/4):2
输入第一个数字: 5
输入第二个数字: 2
5 - 2 = 3

python 生成日历

以下代码用于生成指定日期的日历:

# 引入日历模块
import calendar
 
# 输入指定年月
yy = int(input("输入年份: "))
mm = int(input("输入月份: "))
 
# 显示日历
print(calendar.month(yy,mm))
输入年份: 2015
输入月份: 6
     june 2015
mo tu we th fr sa su
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

python 使用递归斐波那契数列

以下代码使用递归的方式来生成斐波那契数列:

def recur_fibo(n):
   """递归函数
   输出斐波那契数列"""
   if n <= 1:
       return n
   else:
       return(recur_fibo(n-1) + recur_fibo(n-2))
 
 
# 获取用户输入
nterms = int(input("您要输出几项? "))
 
# 检查输入的数字是否正确
if nterms <= 0:
   print("输入正数")
else:
   print("斐波那契数列:")
   for i in range(nterms):
       print(recur_fibo(i))

执行以上代码输出结果为:

您要输出几项? 10
斐波那契数列:
0
1
1
2
3
5
8
13
21
34

python 文件 io

以下代码演示了python基本的文件操作,包括 open,read,write:

# 写文件
with open("test.txt", "wt") as out_file:
    out_file.write("该文本会写入到文件中\n看到我了吧!")
 
# read a file
with open("test.txt", "rt") as in_file:
    text = in_file.read()
 
print(text)

执行以上代码输出结果为:

该文本会写入到文件中
看到我了吧!

python 字符串判断

以下代码演示了python字符串的判断:

# 测试实例一
print("测试实例一")
str = "runoob.com"
print(str.isalnum()) # 判断所有字符都是数字或者字母
print(str.isalpha()) # 判断所有字符都是字母
print(str.isdigit()) # 判断所有字符都是数字
print(str.islower()) # 判断所有字符都是小写
print(str.isupper()) # 判断所有字符都是大写
print(str.istitle()) # 判断所有单词都是首字母大写,像标题
print(str.isspace()) # 判断所有字符都是空白字符、\t、\n、\r

print("------------------------")

# 测试实例二
print("测试实例二")
str = "runoob"
print(str.isalnum())
print(str.isalpha())
print(str.isdigit())
print(str.islower())
print(str.isupper())
print(str.istitle())
print(str.isspace())

执行以上代码输出结果为:

测试实例一
false
false
false
true
false
false
false
------------------------
测试实例二
true
true
false
true
false
false

python 字符串大小写转换

以下代码演示了如何将字符串转换为大写字母,或者将字符串转为小写字母等:

str = "www.runoob.com"
print(str.upper())          # 把所有字符中的小写字母转换成大写字母
print(str.lower())          # 把所有字符中的大写字母转换成小写字母
print(str.capitalize())     # 把第一个字母转化为大写字母,其余小写
print(str.title())          # 把每个单词的第一个字母转化为大写,其余小写 

执行以上代码输出结果为:

www.runoob.com
www.runoob.com
www.runoob.com
www.runoob.com

python 计算每个月天数

以下代码通过导入 calendar 模块来计算每个月的天数:

 
import calendar
monthrange = calendar.monthrange(2016,9)
print(monthrange)

执行以上代码输出结果为:

(3, 30)

输出的是一个元组,第一个元素是所查月份的第一天对应的是星期几(0-6),第二个元素是这个月的天数。以上实例输出的意思为 2016 年 9 月份的第一天是星期四,该月总共有 30 天。


python 获取昨天日期

以下代码通过导入 datetime 模块来获取昨天的日期:

# 引入 datetime 模块
import datetime
def getyesterday(): 
    today=datetime.date.today() 
    oneday=datetime.timedelta(days=1) 
    yesterday=today-oneday  
    return yesterday
 
# 输出
print(getyesterday())

执行以上代码输出结果为:

2015-06-10

以上实例输出的意思为昨天的日期是 2015 年 6 月 10 日。


python 约瑟夫生者死者小游戏

30 个人在一条船上,超载,需要 15 人下船。

于是人们排成一队,排队的位置即为他们的编号。

报数,从 1 开始,数到 9 的人下船。

如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?

people={}
for x in range(1,31):
    people[x]=1
# print(people)
check=0
i=1
j=0
while i<=31:
    if i == 31:
        i=1
    elif j == 15:
        break
    else:
        if people[i] == 0:
            i+=1
            continue
        else:
            check+=1
            if check == 9:
                people[i]=0
                check = 0
                print("{}号下船了".format(i))
                j+=1
            else:
                i+=1
                continue

执行以上实例,输出结果为:

9号下船了
18号下船了
27号下船了
6号下船了
16号下船了
26号下船了
7号下船了
19号下船了
30号下船了
12号下船了
24号下船了
8号下船了
22号下船了
5号下船了
23号下船了

python 五人分鱼

a、b、c、d、e 五人在某天夜里合伙去捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方睡觉。

日上三杆,a 第一个醒来,他将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。

b 第二个醒来,也将鱼分为五份,把多余的一条鱼扔掉拿走自己的一份。 。

c、d、e依次醒来,也按同样的方法拿鱼。

问他们台伙至少捕了多少条鱼?

def main():
    fish = 1
    while true:
        total, enough = fish, true
        for _ in range(5):
            if (total - 1) % 5 == 0:
                total = (total - 1)  //  5 * 4
            else:
                enough = false
                break
        if enough:
            print(f'总共有{fish}条鱼')
            break
        fish += 1


if __name__ == '__main__':
    main()

运行结果:

总共有3121条鱼

python 实现秒表功能

以下实例使用 time 模块来实现秒表功能:

import time
  
print('按下回车开始计时,按下 ctrl + c 停止计时。')
while true:
    
    input("") # 如果是 python 2.x 版本请使用 raw_input() 
    starttime = time.time()
    print('开始')
    try:
        while true:
            print('计时: ', round(time.time() - starttime, 0), '秒', end="\r")
            time.sleep(1)
    except keyboardinterrupt:
        print('结束')
        endtime = time.time()
        print('总共的时间为:', round(endtime - starttime, 2),'secs')
        break

测试结果为:

按下回车开始计时,按下 ctrl + c 停止计时。

开始
计时:  3.0 秒
计时:  5.0 秒
^c结束 6.0 秒
总共的时间为: 6.69 secs

python 计算 n 个自然数的立方和

计算公式 13 + 23 + 33 + 43 + …….+ n3

实现要求:

输入 : n = 5

输出 : 225

公式 : 13 + 23 + 33 + 43 + 53 = 225

 

输入 : n = 7

输入 : 784

公式 : 13 + 23 + 33 + 43 + 53 + 63 + 73 = 784

# 定义立方和的函数
def sumofseries(n):
    sum = 0
    for i in range(1, n+1):
        sum +=i*i*i
         
    return sum
 
   
# 调用函数
n = 5
print(sumofseries(n))

以上实例输出结果为:

225

python 计算数组元素之和

定义一个整型数组,并计算元素之和。

实现要求:

输入 : arr[] = {1, 2, 3}

输出 : 6

计算: 1 + 2 + 3 = 6

# 定义函数,arr 为数组,n 为数组长度,可作为备用参数,这里没有用到
def _sum(arr,n):
     
    # 使用内置的 sum 函数计算
    return(sum(arr))
 
# 调用函数
arr=[]
# 数组元素
arr = [12, 3, 4, 15]
 
# 计算数组元素的长度
n = len(arr)
 
ans = _sum(arr,n)
 
# 输出结果
print ('数组元素之和为',ans)

以上实例输出结果为:

数组元素之和为 34

python 数组翻转指定个数的元素

定义一个整型数组,并将指定个数的元素翻转到数组的尾部。

例如:(ar[], d, n) 将长度为 n 的 数组 arr 的前面 d 个元素翻转到数组尾部。

以下演示了将数组的前面两个元素放到数组后面。

原始数组:

翻转后:

def leftrotate(arr, d, n):
    for i in range(d):
        leftrotatebyone(arr, n)
def leftrotatebyone(arr, n):
    temp = arr[0]
    for i in range(n-1):
        arr[i] = arr[i+1]
    arr[n-1] = temp
         
 
def printarray(arr,size):
    for i in range(size):
        print ("%d"% arr[i],end=" ")
 

arr = [1, 2, 3, 4, 5, 6, 7]
leftrotate(arr, 2, 7)
printarray(arr, 7)

以上实例输出结果为:

3 4 5 6 7 1 2

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网