前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python基础训练100题-8

Python基础训练100题-8

作者头像
用户9925864
发布2022-07-27 09:04:01
1910
发布2022-07-27 09:04:01
举报
文章被收录于专栏:算法工程师的学习日志

分享一些Python学习题目

  • 实例036:算素数
  • 实例037:排序
  • 实例038:矩阵对角线之和
  • 实例039:有序列表插入元素
  • 实例040:逆序列表

实例036:算素数

题目: 求100之内的素数。

程序分析:用else执行for循环的奖励代码(如果for是正常完结,非break)。

代码语言:javascript
复制
lo=int(input('下限:'))
hi=int(input('上限:'))
for i in range(lo,hi+1):
    if i > 1:
        for j in range(2,i):
            if (i % j) == 0:
                break
        else:
            print(i)

实例037:排序

题目: 对10个数进行排序。

程序分析: 同实例005。

代码语言:javascript
复制
raw=[]
for i in range(10):
    x=int(input('int%d: '%(i)))
    raw.append(x)
    
for i in range(len(raw)):
    for j in range(i,len(raw)):
        if raw[i]>raw[j]:
            raw[i],raw[j]=raw[j],raw[i]
print(raw)

实例038:矩阵对角线之和

题目: 求一个3*3矩阵主对角线元素之和。

程序分析: 无。

代码语言:javascript
复制
mat=[[1,2,3],
     [3,4,5],
     [4,5,6]
    ]
res=0
for i in range(len(mat)):
    res+=mat[i][i]
print(res)

实例039:有序列表插入元素

题目: 有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

程序分析: 首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。

代码语言:javascript
复制
lis=[1,10,100,1000,10000,100000]
n=int(input('insert a number: '))
lis.append(n)
for i in range(len(lis)-1):
    if lis[i]>=n:
        for j in range(i,len(lis)):
            lis[j],lis[-1]=lis[-1],lis[j]
        break
print(lis)

实例040:逆序列表

题目: 将一个数组逆序输出。

程序分析: 依次交换位置,或者直接调用reverse方法。

代码语言:javascript
复制
lis=[1,10,100,1000,10000,100000]
for i in range(int(len(lis)/2)):
    lis[i],lis[len(lis)-1-i]=lis[len(lis)-1-i],lis[i]
print('第一种实现:')
print(lis)
 
 
lis=[1,10,100,1000,10000,100000]
print('第二种实现:')
lis.reverse()
print(lis)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法工程师的学习日志 微信公众号,前往查看

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

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

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