关于python的十一道练习

1.编写程序,输入一个自然数字符串,然后输出各位数字之和。例如,输入字符串1234,输出10.

 def sums1(): #第一题
strs=input('请输入一个自然数字符串:')
num=0
for i in range(0,len(strs)):
num=num+int(strs[i:i+1])
print('该字符串各位数字之和为:',num)

2.编写程序,输入一个字符串,输出翻转(首尾交替)后的字符串。例如,输入字符串12345,输出54321.

 def turn2():  #第二题
strs=input('请输入一个字符串:')
strn=list(strs)
m=strn.copy()
n=len(strs)-1
for i in strn:
m[n]=i
n=n-1
strs=''.join(m)
print('该字符串的翻转为:',strs)
  • 该题要注意的是 ''.join() 为列表转字符串。

3.编写程序,输入一个包含若干整数的列表,输出列表中的最大值。例如,输入[1,2,3,4,5,888],输出888.

 def max3():  #第三题
li = list(map(int,input('请输入一串整数,用空格隔开:').split()))
maxn=li[0]
for i in li :
if maxn<i:maxn=i
print('最大值为:',maxn)
  • 该题要注意的是因为输入的是字符串,要将其转化为列表,.split()是将输入的字符串用空格分隔开转为列表,map()函数将字符串列表中的每个字符串数字转化为int整型数值  。

4.编写程序,输入一个包含若干整数的列表,把列表中所有整数转换为字符串,然后输出包含这些字符串的列表。例如,输入[1,2,3,4,5,888],输出['1','2','3','4','5','888']。

 def lizstr4():  #第四题
li = list(map(int,input('请输入一串整数,用空格隔开:').split()))
print('转换为列表为:',[str(i) for i in li])
  • 该题要注意的是  str(i) for i in li 为将列表 li 中的所有元素都转换成字符串。

5.编写程序,输入一个包含若干任意数据的列表,输出该列表中等价于True的元素组成的列表。例如,输入[1,2,0,None,False,'a'],输出[1,2,'a']。

 def true5():  #第五题
li = list(input('请输入一串字符串,用空格隔开:').split())
a=[]
for i in li :
if i!=0 and i!='None' and i!='none' and i!='False' and i!='false':
a.append(i)
print('等价于True的元素为:',a)

6.编写程序,输入一个包含若干自然数的列表,输出这些自然数的平均值。

 def average6():  #第六题
li = list(map(int,input('请输入一串自然数,用空格隔开:').split()))
sumn=0
for i in li:
sumn+=i
avg=sumn/len(li)
print('平均数为:%.3f'%avg)

7.编写程序,输入一个包含若干自然数的列表,输出这些自然数降序排列的新列表。

 def des7():  #第七题
li = list(map(int,input('请输入一串自然数,用空格隔开:').split()))
for i in range(0,len(li)):
for j in range(i,len(li)):
if li[i] < li[j]:
temp=li[i]
li[i]=li[j]
li[j]=temp
print('降序排列为:',li)

8.编写程序,输入一个包含若干自然数的列表,输出一个新列表,新列表中每个元素为原列表中每个自然数的位数。例如,输入[1,888,99,23456],输出为[1,3,2,5]。

 def digit8():  #第八题
li = list(map(int,input('请输入一串自然数,用空格隔开:').split()))
m=[]
n=0
for i in li :
m.append(len(str(i)))
n+=1
print('新列表为:',m)

9.编写程序,输入一个包含若干实数的列表,输出其中绝对值最大的实数。例如,输入[-8,64,3.5,-89],输出-89。

 def maxabs9():  #第九题
li = list(map(eval,input('请输入一串实数,用空格隔开:').split()))
maxn=li[0]
for i in li:
if abs(maxn)<abs(i):
maxn=i
print('绝对值最大为:',maxn)
  • 该题要注意的是 abs() 为系统求数的绝对值函数。

10.编写程序,输入一个包含若干整数的列表,输出这些整数的乘积。例如,输入[-2,3,4],输出-24。

 def product10():  #第十题
li = list(map(eval,input('请输入一串整数,用空格隔开:').split()))
product=1
for i in li:
product=product*i
print('乘积为:',product)

11.编写程序,输入两个包含着若干整数的等长列表,把这两个列表看作两个向量,输出这两个向量的内积。

 def inner11():  #第十一题
li1 = list(map(eval,input('请输入第一串实数,用空格隔开:').split()))
li2 = list(map(eval,input('请输入第二串实数,用空格隔开:').split()))
m=[]
for i in range(0,len(li1)):
m.append(li1[i]*li2[i])
print('内积为:',m)

关于python的十一道练习的更多相关文章

  1. 初学 Python(十五)——装饰器

    初学 Python(十五)--装饰器 初学 Python,主要整理一些学习到的知识点,这次是生成器. #-*- coding:utf-8 -*- import functools def curren ...

  2. 初学 Python(十四)——生成器

    初学 Python(十四)--生成器 初学 Python,主要整理一些学习到的知识点,这次是生成器. # -*- coding:utf-8 -*- ''''' 生成式的作用: 减少内存占有,不用一次性 ...

  3. 初学 Python(十二)——高阶函数

    初学 Python(十二)--高阶函数 初学 Python,主要整理一些学习到的知识点,这次是高阶函数. #-*- coding:utf-8 -*- ''''' 话说高阶函数: 能用函数作为参数的函数 ...

  4. 初学Python(十)——列表生成式

    初学Python(十)--列表生成式 初学Python,主要整理一些学习到的知识点,这次是列表生成式. # -*- coding:utf-8 -*- ''''' 列表生成式 ''' #一行代码表达所有 ...

  5. Python第二十四天 binascii模块

    Python第二十四天 binascii模块 binascii用来进行进制和字符串之间的转换 import binascii s = 'abcde' h = binascii.b2a_hex(s) # ...

  6. Python第二十六天 python装饰器

    Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...

  7. Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fabric模块

    Python第十五天  datetime模块 time模块   thread模块  threading模块  Queue队列模块  multiprocessing模块  paramiko模块  fab ...

  8. Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式

    Python第十四天 序列化  pickle模块  cPickle模块  JSON模块  API的两种格式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Py ...

  9. Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用 optparse argparse

    Python第十天   print >> f,和fd.write()的区别    stdout的buffer  标准输入 标准输出  从控制台重定向到文件  标准错误   重定向 输出流和 ...

随机推荐

  1. Sass、LESS 和 Stylus各有千秋

    废话不多说直接上连接  为您详细比较三个 CSS 预处理器(框架):Sass.LESS 和 Stylus  

  2. Centos7下Redis设置开机自启动服务

    有个同事说重启了服务器没有自启动redis,我看了一下,是以前手动编译安装的模式,没有配置开机启动的服务 这边做个笔记记录一下redis如何设置编译安装模式的开机自启动. 第一种方法: 1.编写red ...

  3. Python 周刊第 418 期

    新闻 PyCon US 2020 开始接受财务赞助! https://pycon.blogspot.com/2019/10/financial-aid-launches-for-pycon-us-20 ...

  4. Mybatis中返回Map

    在Mybatis中,我们通常会像下边这样用: 返回一个结果 User selectOne(User user); <select id="selectOne" paramet ...

  5. React躬行记(12)——Redux中间件

    Redux的中间件(Middleware)遵循了即插即用的设计思想,出现在Action到达Reducer之前(如图10所示)的位置.中间件是一个固定模式的独立函数,当把多个中间件像管道那样串联在一起时 ...

  6. java spring是元编程框架---使用的机制是注解+配置

    java spring是元编程框架---使用的机制是注解+配置

  7. SimpleDateFormat类简单学习

    一.简介 SimpleDateFormat是一个格式化和解析日期的具体类,其可以将时间转化为指定格式的日期字符串,也可以将具有格式的日期字符串转换为时间. formatting (date → tex ...

  8. attempted to return null from a method with a primitive return type (int).

    java接口文件 package com.cyb.ms.mapper; import org.apache.ibatis.annotations.Param; public interface Acc ...

  9. 转战物联网·基础篇05-通俗理解MQTT协议的实现原理和异步方式

      网络上搜索MQTT协议,会出现太多的解释,这里就不做官方标准释义的复制了.这一节我们从实战理解角度,通俗的将MQTT协议的作用及实现原理说一下,旨在可以快速理解MQTT协议.所以可能会出现很多看似 ...

  10. 操作系统|VirtualBox for Mac(虚拟机软件)

    VirtualBox是德国一家软件公司InnoTek所开发的虚拟系统软件,它不仅具有丰富的特色,而且性能也很优异,更是开源的,成为了一个发布在GPL许可之下的自由软件.VirtualBox 可以在 L ...