前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >经典 | Python实例小挑战—Part ten

经典 | Python实例小挑战—Part ten

作者头像
潘永斌
发布2020-08-06 09:52:08
3890
发布2020-08-06 09:52:08
举报
文章被收录于专栏:看那个码农看那个码农
本系列推文,我们每期将对五个Python实例小项目进行介绍,每天三分钟,由浅入深,由易到难,让各位读者渐渐爱上这门神奇的编程语言,掌握它并且能够在生活中使用它。

今天介绍的实例小项目为:(基于Python3.7版本)

实例1:根据条件执行函数

实例2:冒泡排序

实例3:输出指定格式日期

实例4:统计字符串的各类字符个数

实例5:Hello World!

图片来源:YouTube

No.1

实例1:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数1/1+1/3+…+1/n。

代码语言:javascript
复制
def peven(n):
    i = 0
    s = 0.0
    for i in range(2, n + 1, 2):
        s += 1.0 / i
    return s

def podd(n):
    s = 0.0
    for i in range(1, n + 1, 2):
        s += 1.0 / i
    return s

def dcall(fp, n):
    s = fp(n)
    return s

if __name__ == '__main__':
    n = int(input('请输入一个数: '))
    if n % 2 == 0:
        print('输入的数字是偶数,调用函数求1/2+1/4+…+1/n的结果为:')
        sum = dcall(peven, n)
    else:
        print('输入的数字是奇数,调用函数1/1+1/3+…+1/n的结果为:')
        sum = dcall(podd, n)
    print(sum)

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

No.2

实例2:冒泡排序是一种比较简单的排序算法,它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换。

代码语言:javascript
复制
def bubbleSort(arr):
    n = len(arr)
    # 遍历所有数组元素
    for i in range(n):
        # Last i elements are already in place
        for j in range(0, n-i-1):
            if arr[j] > arr[j+1] :
                arr[j], arr[j+1] = arr[j+1], arr[j]
 
arr = [100, 134, 5, 68, 2, 101, 9]
 
bubbleSort(arr)
 
print ("排序后的数组:")
for i in range(len(arr)):
    print ("%d" %arr[i]),

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

No.3

实例3:按照自己设定的格式,输出时间。

代码语言:javascript
复制
if __name__=='__main__':
  # 输出当前日期
  print(datetime.date.today())

  # 创建日期对象
  P_Birth = datetime.date(1996,7,10)
  print(P_Birth)

  # 指定格式输出
  print(P_Birth.strftime('%m/%d/%Y'))

  # 日期替换
  P_Birth = P_Birth.replace(year=P_Birth.year+1)
  print(P_Birth)

  # 日期运算
  Next_P_Birth = P_Birth + datetime.timedelta(days=366)
  print(Next_P_Birth)

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

No.4

实例4:计算二次方程

实例4:计算二次方程

实例4:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

代码语言:javascript
复制
import string

s = input('请输入字符串:\n')
num_letter = 0
num_space = 0
num_digit = 0
num_other = 0

for i in range(len(s)):
  if s[i].isspace():
    num_space += 1
  elif s[i].isdigit():
    num_digit += 1
  elif s[i].isalpha():
    num_letter += 1
  else:
    num_other += 1

print('英文字母个数: ', num_letter)
print('空格个数: ', num_space)
print('数字个数: ', num_digit)
print('其它符号个数: ', num_other)

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

No.5

实例5:Hello World!

代码语言:javascript
复制
# 输出字符串 Hello World!
print('Hello World!')

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

从什么都没有的地方到什么都没有的地方。不知不觉,Python实例小挑战的内容已经写了十期内容。在这里,该系列内容就告一段落了,如果大家对Python的哪方面知识有疑惑或对人工智能的哪方面知识感兴趣,可以将心中想问的、想看的内容,发送至本公众号后台,或者加入我们的技术交流群,我们为您写出您最想看的内容。

谢谢您的长期关注与支持!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 看那个码农 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档