关于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. vue-property-decorator和typescript结合构建的class类组件,父组件触发子组件方法的方式

    vue-property-decorator和typescript结合构建的class类组件,父组件触发子组件方法的方式 class类组件示例 Father类组件 <template> & ...

  2. CSV和JSON格式相互转换

    1.为什么要进行CSV与JSON格式之间的转换 CSV格式常用于一二维数据表示和存储,他是一种纯文本形式存储表格数据的表示方式.JSON也可以表示一二维数据.在网络信息传输中,可能需要统一表示方式,因 ...

  3. spring-db-事务

    --都是之前各位大佬总结好的,我只是肤浅的汇总一下,结合我犯得错误,适合像我一样的萌新看 第一:@Transcation 引入的注解 package org.springframework.trans ...

  4. 【docker部署】基于linux的centos操作系统部署安装docker容器

    一.docker介绍 容器是轻量级的,包含应用运行所需所有东西(代码.库.运行时环境.系统设置,以及依赖关系)的独立的包.每个容器都部署于它自己的 CPU.内存.块 I/O,以及网络资源上,所有这些都 ...

  5. new String()与toString

    str.toString是调用了str这个object对象的类的toString方法.一般是返回这么一个String:[class name]@[hashCode].new String(str)是根 ...

  6. PHP 将某个http地址的远程图片下载到本地的某个目录

    代码: function getImage($url,$save_dir='',$filename='',$type=0){ if(trim($url)==''){ return array('fil ...

  7. form表单中的button自动刷新页面问题

    form表单中如果存在button的话,有可能会出现一个问题:点击button,触发了页面的自动刷新事件. 原因是因为<button>标签默认的类型是submit,即默认的button点击 ...

  8. ubuntu16搭建文件服务器

    这篇记录,如何在ubuntu16 安装 FastDFS 文件服务器,详细步骤 环境依赖 apt-get install make apt-get install unzip apt-get insta ...

  9. WPF customize DelegateCommand

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; usin ...

  10. Linux介绍以及VMware和Centos的安装

    一. Linux介绍 1 Linux诞生的故事 Unix篇: 为了进一步强化大型主机的功能,让主机的资源可以提供更多的使用者来利用,所以在1964年, 由AT&A公司的贝尔实验室(Bell). ...