ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python 第四次实验

2022-05-01 22:00:42  阅读:113  来源: 互联网

标签:字符 Python char 实验 def ans input 输入 第四次


1、(程序设计)定义函数def GetRandomChar(),返回一个随机的数字或大写或小写字母,每个符号出现的机会相等。调用该函数8次,生成并输出一个8位的验证码。用户输入该验证码,如果验证码正确,则显示“欢迎使用本系统”,否则显示“验证码错误,禁止登录”。

import random

def GetRandomChar():
    key=random.randint(0,61)
    if(key<10):
        return str(key)
    if(key<=35):
        return chr(ord('a')+key-10)
    return chr(ord('A')+key-36)

key='';
for i in range(8):
    key=key+GetRandomChar()

print('验证码为:{}'.format(key))
key_input=input('请输入验证码:')
if key_input==key:
    print('欢迎使用本系统')
else:
    print('验证码错误,禁止登录')

2、(程序设计)定义一个函数def DrawPic(n, char),它的功能是显示由字符char组成的图形,图形上半部分共n行,请参考下图。

def DrawLine(space_num,char_num,char):
    print(' '*space_num,char*(char_num*2-1),sep='')


def DrawPic(n,char):
    for i in range(-n+1,n):
        DrawLine(abs(i),n-abs(i),char)

n=int(input('请输入一个整数:'))
ch=input('请输入一个字符:')

DrawPic(n,ch)

3、(程序设计)一类完全平方数。输入正整数a,b,统计并输出[a,b]内有多少个数满足(1)是完全平方数(2)至少有两个数字相同。要求定义两个个函数:
(1)判断是否是完全平方数的函数 def IsPerfectSquare(n),当n是完全平方数时返回True,否则返回False
(2)判断是否有相同数字的函数 def IsSameDigit(n) ,当n有相同数字时返回True,否则返回False

import math

def IsPerfectSquare(n):
    k=int(math.sqrt(n))
    if k**2==n:
        return True
    return False

def IsSamDigit(n):
    a=[0]*10
    while n>0:
        x=n%10
        n=n//10
        if a[x]>0 :
            return True
        a[x]=a[x]+1
    return False

l=int(input('请输入整数a:'))
r=int(input('请输入整数b:'))
ans=0
for i in range(l,r+1):
    ans=ans+(IsSamDigit(i) and IsPerfectSquare(i))
print('在[{},{}]共有{}个数满足条件'.format(l,r,ans))

4、(程序设计)输入一个字符串,找出该字符串出现次数最多的字符。比如,输入abc12d3ebaa,出现次数最多的字符是a。如果次数最多的有多个字符,输出任意一个即可。注意:不能用max,sort,sorted函数(本题分数:14)

in_str=input('请输入一个字符串:')
ans=[0]*128
for s in in_str:
    key=ord(s)
    ans[key]=ans[key]+1

id=0
for i in range(1,128):
    if ans[i]>ans[id]:
        id=i
print('出现次数最多的字符是{}'.format(chr(id)))

5、(程序设计)编写程序,对于输入的字符串,统计每个字符出现的次数,例如输入aabbccc,则输出{'a':2, 'b':2, 'c':3}(假定字符串只包含小写字母),要求使用字典结构完成(本题分数:14)

in_str=input('请输入字符串:')
dict={}
for s in in_str:
    if s in dict:
        dict[s]=dict[s]+1
    else:
        dict[s]=1
print(dict)

6、(程序设计)编写程序,判断给定的字符串是否是回文串,回文串的定义:字符串第一个字符跟最后一个字符相等,第二个字符跟倒数第二个相等,依次类推。例如abba是回文串,aba也是。而abc不是回文串。(本题分数:14)

s=input('请输入字符串:')
i=0
j=len(s)-1
while i<j:
    if s[i]!=s[j]:
        print('{}不是回文串'.format(s))
        break
    i=i+1
    j=j-1
else:
    print('{}是回文串'.format(s))

7、(程序设计)输入一个整数n,生成长度为n的列表,将n个随机大写字符放入列表中(本题分数:14)

import random
n=int(input('请输入整数n:'))
list=['']*n
for i in range(n):
    list[i]=chr(random.randint(ord('A'),ord('Z')))
print(list)

标签:字符,Python,char,实验,def,ans,input,输入,第四次
来源: https://www.cnblogs.com/alphainf/p/16214242.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有