网络编程
位置:首页>> 网络编程>> Python编程>> 100 个 Python 小例子(练习题二)

100 个 Python 小例子(练习题二)

作者:野客  发布时间:2021-02-09 10:15:31 

标签:Python,练习
目录
  • 实例031:字母识词

  • 实例032:反向输出II

  • 实例033:列表转字符串

  • 实例034:调用函数

  • 实例035:设置输出颜色

  • 实例036:算素数

  • 实例037:排序

  • 实例038:矩阵对角线之和

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

  • 实例040:逆序列表

  • 实例041:类的方法与变量

  • 实例042:变量作用域

  • 实例043:作用域、类的方法与变量

  • 实例044:矩阵相加

  • 实例045:求和

  • 实例046:打破循环

  • 实例047:函数交换变量

  • 实例048:数字比大小

  • 实例049:lambda

  • 实例050:随机数

实例031:字母识词

题目:

请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。

程序分析:这里用字典的形式直接将对照关系存好。


weekT={'h':'thursday',
      'u':'tuesday'}
weekS={'a':'saturday',
      'u':'sunday'}
week={'t':weekT,
     's':weekS,
     'm':'monday',
     'w':'wensday',
     'f':'friday'}
a=week[str(input('请输入第一位字母:')).lower()]
if a==weekT or a==weekS:
   print(a[str(input('请输入第二位字母:')).lower()])
else:
   print(a)

实例032:反向输出II

题目:

按相反的顺序输出列表的值。


a = ['one', 'two', 'three']
print(a[::-1])

实例033:列表转字符串

题目:

按逗号分隔列表。


L = [1,2,3,4,5]
print(','.join(str(n) for n in L))

实例034:调用函数

题目:

练习函数调用。


def hello():
   print('Hello World!')
def helloAgain():
   for i in range(2):
       hello()

if __name__=='__main__':
   helloAgain()

实例035:设置输出颜色

题目:

文本颜色设置。


class bcolors:
   HEADER = '\033[95m'
   OKBLUE = '\033[94m'
   OKGREEN = '\033[92m'
   WARNING = '\033[93m'
   FAIL = '\033[91m'
   ENDC = '\033[0m'
   BOLD = '\033[1m'
   UNDERLINE = '\033[4m'
print(bcolors.WARNING + "警告的颜色字体?" + bcolors.ENDC)

实例036:算素数

题目:

求100之内的素数。

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


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。


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矩阵主对角线元素之和。


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:有序列表插入元素

题目:

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

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


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方法。


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)

实例041:类的方法与变量

题目:

模仿静态变量的用法。

程序分析:构造类,了解类的方法与变量。


def dummy():
   i=0
   print(i)
   i+=1

class cls:
   i=0
   def dummy(self):
       print(self.i)
       self.i+=1

a=cls()
for i in range(50):
   dummy()
   a.dummy()

实例042:变量作用域

题目:

学习使用auto定义变量的用法。

程序分析:python中的变量作用域。


i=0
n=0
def dummy():
   i=0
   print(i)
   i+=1
def dummy2():
   global n
   print(n)
   n+=1
print('函数内部的同名变量')
for j in range(20):
   print(i)
   dummy()
   i+=1
print('global声明同名变量')
for k in range(20):
   print(n)
   dummy2()
   n+=10

实例043:作用域、类的方法与变量

题目:

模仿静态变量(static)另一案例。

程序分析:综合实例041和实例042。


class dummy:
   num=1
   def Num(self):
       print('class dummy num:',self.num)
       print('global num: ',num)
       self.num+=1

n=dummy()
num=1
for i in range(5):
   num*=10
   n.Num()

实例044:矩阵相加

题目:

计算两个矩阵相加。

程序分析:创建一个新的矩阵,使用 for 迭代并取出 X 和 Y 矩阵中对应位置的值,相加后放到新矩阵的对应位置中。


X = [[12,7,3],
   [4 ,5,6],
   [7 ,8,9]]

Y = [[5,8,1],
   [6,7,3],
   [4,5,9]]

res=[[0,0,0],
   [0,0,0],
   [0,0,0]]
for i in range(len(res)):
   for j in range(len(res[0])):
       res[i][j]=X[i][j]+Y[i][j]
print(res)

实例045:求和

题目:

统计 1 到 100 之和。


res=0
for i in range(1,101):
   res+=i
print(res)

实例046:打破循环

题目:

求输入数字的平方,如果平方运算后小于 50 则退出。


while True:
   try:
       n=float(input('输入一个数字:'))
   except:
       print('输入错误')
       continue
   dn=n**2
   print('其平方为:',dn)
   if dn<50:
       print('平方小于50,退出')
       break

实例047:函数交换变量

题目:

两个变量值用函数互换。


def exc(a,b):
   return (b,a)
a=0
b=10
a,b=exc(a,b)
print(a,b)

实例048:数字比大小

题目:

数字比较。


a=int(input('a='))
b=int(input('b='))
if a<b:
   print('a<b')
elif a>b:
   print('a>b')
else:
   print('a=b')

实例049:lambda

题目:

使用lambda来创建匿名函数。


Max=lambda x,y:x*(x>=y)+y*(y>x)
Min=lambda x,y:x*(x<=y)+y*(y<x)

a=int(input('1:'))
b=int(input('2:'))

print(Max(a,b))
print(Min(a,b))

实例050:随机数

题目:

输出一个随机数。

程序分析:使用 random 模块。


import random
print(random.uniform(10,20))

来源:https://zhuanlan.zhihu.com/p/260175468

0
投稿

猜你喜欢

  • 阅读上一片:微软建议的ASP性能优化28条守则(1)技巧 3:将数据和 HTML 缓存在 Web 服务器的磁盘上有时,数据可能太多,无法都缓
  • 我的通用权限系统设计是更换权限时候尽量不要涉及到代码修改,来自chinaunix论坛,今天转过来看看。希望对大家有所帮助,对PHP100的朋
  • 通过第三方库exifread读取照片信息。exifread官网:https://pypi.org/project/ExifRead/一、安装
  • 最近在学习Golang语言,中间遇到一个前辈指点,有一个学习原则:Learning By Doing。跟我之前学习Java的经验高度契合。在
  • 可用下列函数来产生你需要的东西,将它们发送给用户就可以啦:<%response.write makePassword(16)
  • 前言前面我们已经介绍了 python面向对象入门教程之从代码复用开始(一) ,这篇文章主要介绍的是关于Python面向对象之设置对
  • MySQL Order By keyword是用来给记录中的数据进行分类的。MySQL Order By Keyword根据关键词分类ORD
  • 本文实例讲述了Python求导数的方法。分享给大家供大家参考。具体实现方法如下:def func(coeff):  sum=
  • 首先对空格宽度的定义:空格,由于每个浏览器处理会有微小的不同,在这里我将可以选中的宽度作为空格的宽度。视觉宽度和可选中的宽度有 0~3px
  • 开发环境:python 3.6django 1.11场景一经常有从数据库中获取一批数据,然后在前端以列表的形式展现,比如:获取到所有的用户,
  • 三遍记忆,让你记住海量素材的准确位置和用途,提高其可用性.这仅仅是一个示意图.在以往的日子里,我做到了只要脑袋里冒出一个想法,立刻就能知道我
  • 任何一个行业里,当有一头近乎垄断的大象盘踞着的时候,生活在大象身后的蚂蚁们既是悲哀又是幸运的。悲哀的是市场已近乎被大象垄断留给他们的空间已经
  • asp编程中我们经常要处理字符串,比如一个新闻列表,在我们编写asp程序的时候就要考虑到新闻标题的长度不确定性,因为有的文章标题可能很长,可
  • 1.MTV开发模式介绍M:Models 模型(数据)与数据组织相关的功能。组织和存储数据的方法和模式,与数据模型相关的操作。T:Templa
  • 有朋友使用DIV居中,但是却发现DIV居中失灵了,是怎么回事呢?下面给大家解决一下问题,呵呵!1、一般情况下DIV居中失效是因为没写DTD语
  • Application对象 Application对象是个应用程序级的对象,用来在所有用户间共享信息,并可以在Web应用程序运行期间持久地保
  • Debug Textarea这个东西是在线写 js 脚本的时候,用来即时查错的东西!也就是,当发现所编写的脚本有问题的时候会有相应的提示,并
  • 我们经常会在登录一个网站的时候被引导页挡住前进的脚步,这一点在上个世纪到本世纪初的网站中尤其明显,特别是在企业网站里,几乎每个企业网站都会有
  • 内容摘要:最近逛论坛经常看到有朋友问上传文件怎么重命名,怎么以当前日期来重命名上传文件。现在我就介绍一下重命名的方法,希望对大家有所帮助。本
  • 调用pytorch内置的模型的方法import torchvisionmodel = torchvision.models.resnet50
手机版 网络编程 asp之家 www.aspxhome.com