关于python的十一道练习
关于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的十一道练习的更多相关文章
- 初学 Python(十五)——装饰器
初学 Python(十五)--装饰器 初学 Python,主要整理一些学习到的知识点,这次是生成器. #-*- coding:utf-8 -*- import functools def curren ...
- 初学 Python(十四)——生成器
初学 Python(十四)--生成器 初学 Python,主要整理一些学习到的知识点,这次是生成器. # -*- coding:utf-8 -*- ''''' 生成式的作用: 减少内存占有,不用一次性 ...
- 初学 Python(十二)——高阶函数
初学 Python(十二)--高阶函数 初学 Python,主要整理一些学习到的知识点,这次是高阶函数. #-*- coding:utf-8 -*- ''''' 话说高阶函数: 能用函数作为参数的函数 ...
- 初学Python(十)——列表生成式
初学Python(十)--列表生成式 初学Python,主要整理一些学习到的知识点,这次是列表生成式. # -*- coding:utf-8 -*- ''''' 列表生成式 ''' #一行代码表达所有 ...
- Python第二十四天 binascii模块
Python第二十四天 binascii模块 binascii用来进行进制和字符串之间的转换 import binascii s = 'abcde' h = binascii.b2a_hex(s) # ...
- Python第二十六天 python装饰器
Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...
- Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fabric模块
Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fab ...
- Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式
Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell 文件 Py ...
- Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用 optparse argparse
Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和 ...
随机推荐
- day100_12_4DataFrame和matplotlib模块
一.Dataframe的分组. 再网页表格数据 的分析中,可以使用以下语句进行爬取表格. res = pd.read_html('https://baike.baidu.com/item/NBA%E6 ...
- IT兄弟连 HTML5教程 多媒体应用 新增多媒体播放元素
在HTML5之前,要在网站上展示视频.音频.动画等多媒体信息,除了使用第三方自主开发的播放器,使用最多的工具应该算是Flash了,但是它们都需要在浏览器中安装各种插件才能使用,有时速度很慢.HTML5 ...
- C++ float vs double
精度 相比 float ,double 从其名字上已经展示出,它的精度是前者的两倍,他们的精度分别为: float: 7 位数字 double: 15 位数字 可通过如下的示例看出,在重复进行计算时, ...
- C#时间戳与时间相互转换
代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...
- Web前端基础(11):JavaScript(五)
1. 初识DOM 1.1 DOM介绍 1.1.3 什么是DOM DOM:文档对象模型.DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构.目的其实就是为了能让js操作html元素而制定 ...
- java基础(6):方法
1. 方法 1.1 方法概述 在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法. 如:小明同学在路边准备坐车来学校学习.这就面临着一件事情(坐车到学校这件事情)需要解决,解决办法呢?可 ...
- Linux 资源监控整体分析-TOP
一.top 第一行,任务队列信息,同 uptime 命令的执行结果 系统时间:15:23:10 运行时间:up 236 day,4min, 当前登录用户: 2个 user 负载均衡(uptime) ...
- WePy框架的使用
基本示例 import wepy from 'wepy';//引入wepy框架说明 // 通过继承自wepy.page的类创建页面逻辑 export default class Index exten ...
- LInux:YUM源安装工具的配置及使用
YUM源的设置及使用 YUM工具简介 (1)YUM(Yellow dog Upadate Modifie)是改进版的 RPM 管理器,很好地解决了 RPM 软件包的依赖问题. (2)YUM 可以从很多 ...
- Linux —— 时间(tzselect、timedatactl命令,查看和修改时区,修改时区为东八区)【转】
转自:https://blog.csdn.net/weixin_42167759/article/details/90648225 一.设置linux修改时区首先查看当前时区 #date -R显示结果 ...