我的python笔记-12.13

7-103 统计指定数字和

输入一个数字的字符串和一个数字字符(1到9),统计这个数字在字符串中出现的次数,并累加。例如有个字符串是1234321,查找2这个数字,在字符串中出现了2次,所以累计和就是2+2=4

输入格式:

输入2行。第1行是字符串,第2行是要查找的数字。

输出格式:

指定数字出现的累加和

输入样例:

1234321
2

输出样例:

4

代码

n=str(input())
a=str(input())
s=n.count(a)
c=s*int(a)
print(c)

需要用到的陌生语法:

n.count(a)表示在字符串n中字符出现的个数

心路历程:

这道题一开始我是做错了的。

n=input()
a=int(input())
num=0
for i in n:
    if i==a:
        num+=1
c=num*a
print(c)

这是我第一次写的代码。最后返回值一直是0 ,我一直没找出问题所在。后来我在比照别人的代码的时候发现问题出在第五行,i 和 a 本来就不是一个类型的所以num恒定一定是为零的。应该是 if int(i)==a,后来我发现我在做题的时候经常会出现这么一个问题,大家一定要注意啊!

然后找了一种更简单的方法就是只用调用列表的count()函数。

7-105 数组逆序排列输出

输入一组整,将这组数组从大到小逆序排列,并按照指定格式输出。

输入格式:

一行一组数据

输出格式:

指定的格式输出逆序

输入样例

1 2 3 4 5 6 7 8

输出样例:

8->7->6->5->4->3->2->1

代码

n=input().split()
n.sort(reverse==True)
print("->".join(n))

需要用到的陌生代码 :

x.sort(reverse==True)表示对x这个字符串进行升序排列。

“x”.join(n)表示将n每个字符之间以x相连

这道题较为简单只需要搞明白我们需要用到的语法,其他都没有什么问题。

7-108 判断字符串头尾结构

输入一个字符串,判断是否头尾对应的。比如字符串'abcba'就是头尾对应的。比如字符串'+-**-+',也是头尾对应的。比如字符串'abcbb'就不是头尾对应的。

输入格式:

输入一个字符串

输出格式:

如果头尾对应,输出'yes'
否则输出'no'

输入样例:

abcba

输出样例:

yes

代码

n=input()
if n[0]==n[-1]:
    print('yes')
else:
    print('no')

这个代码学会字符串通过下标位置引用就可以求解出来,相对来说是最基础类的题目了。

7-109 找最长单词

输入一句英文,整句英文有4个单词,只有最后一个句号。输出最长的单词。如果有多个单词长度一样,输出第一个。

输入格式:

一句英文,整句英文有4个单词。整句英文只有最后一个标点符号。

输出格式:

句子中最长的单词

输入样例:

i am a boy!

输出样例:

boy

代码

a=0
n=input()[::-1].split()
for i in n:
    if len(i)>a:
        a=len(i)
        b=i
print(b)

心路历程

这道题的思路也比较简单,就是初始一个a的值for循环,通过长度的比较依次更改a的值一直到得到最大的长度,其所对应的i就是我们要找的最长的单词。

7-98 判断完数

判断一个正整数是否为完数。完数定义:一个数的所有因子(包括1)之和等于它自身,这个数就是完数。比如6=1+2+3,6是完数。

输入格式:

例如:输入一个正整数 6

输出格式:

输出:

6=1+2+3

输入样例:

在这里给出一组输入。例如:

6

输出样例:

在这里给出相应的输出。例如:

6=1+2+3

输入样例:

在这里给出一组输入。例如:

28

输出样例:

在这里给出相应的输出。例如:

28=1+2+4+7+14

代码

n=int(input())
list1=[]
for i in range(1,n):
    if n%i==0:
        list1.append(i)
print("{}=".format(n),end="")
print(*list1,sep='+')

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值