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 第四次实验的更多相关文章

  1. 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天

     孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...

  2. 20145224&20145238 《信息安全系统设计基础》 第四次实验

    20145224&20145238 <信息安全系统设计基础>第四次实验 课程:信息安全系统设计基础 班级:1452 姓名:陈颢文 荆玉茗 学号:20145224 20145238 ...

  3. 20145330《Java程序设计》第四次实验报告

    20145330<Java程序设计>第四次实验报告 实验四 Android环境搭建 实验内容 1.搭建Android环境 2.运行Android 3.修改代码,能输出学号 实验步骤 搭建A ...

  4. 20145320《Java程序设计》第四次实验报告

    20145320<Java程序设计>第四次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.26 15: ...

  5. 简学Python第四章__装饰器、迭代器、列表生成式

    Python第四章__装饰器.迭代器 欢迎加入Linux_Python学习群  群号:478616847 目录: 列表生成式 生成器 迭代器 单层装饰器(无参) 多层装饰器(有参) 冒泡算法 代码开发 ...

  6. Python 基础 四 面向对象杂谈

    Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...

  7. 初学Python(四)——set

    初学Python(四)——set 初学Python,主要整理一些学习到的知识点,这次是set. # -*- coding:utf-8 -*- #先来看数组和set的差别 d=[1,1,2,3,4,5] ...

  8. python 函数“四剑客”的使用和介绍

    python函数四剑客:lambda.map.filter和reduce. 一.lambda(匿名函数) 1. 学习lambda要注意一下几点: lambda语句被用来创建新的函数对象,并且在运行的时 ...

  9. 南京邮电大学java第四次实验报告

    实 验 报 告 ( 2017 / 2018学年 第2学期) 课程名称 JAVA语言程序设计 实验名称 Java集成开发环境的安装与使用. Java变量.表达式与控制结构 实验时间 2018 年 6 月 ...

随机推荐

  1. 从零打造一个Web地图引擎

    说到地图,大家一定很熟悉,平时应该都使用过百度地图.高德地图.腾讯地图等,如果涉及到地图相关的开发需求,也有很多选择,比如前面的几个地图都会提供一套js API,此外也有一些开源地图框架可以使用,比如 ...

  2. python+requests+yaml实现接口自动化用例

    前言:最近也思考了一下怎么做接口自动化,以下内容属于自己目前阶段所学习到的内容,也逐渐投入自己实际工作中,把最近的学习新得跟大家分享下,话不多说,切入正题. 对接口自动化测试用例的思考:接口测试大多测 ...

  3. jQuery获取市、区县、乡镇、村

    效果图: 首先根据自己方法把地区树状结构json字符串拿到 html下拉框和js写法如下: <select class="form-control" style=" ...

  4. VScode运行总是显示running状态

    一.每次点击运行都显示code is already running,而且键盘也没有办法输入 二.解决办法 注意:记得重新启动VScode

  5. 文件的下载,HttpMessageConverter原理

    HttpMessageConverter<T> 1) HttpMessageConverter<T> 是 Spring3.0 新添加的一个接口,负责将请求信息转换为一个对象(类 ...

  6. Deep Learning-深度学习(一)

    深度学习入门 1.人工智能.机器学习.深度学习 1.1 人工智能(AI) 一个比较宽泛的概念.即用来模拟人的智能的理论,并对这个模拟出来的智能进行延伸和开拓.通俗来讲就是要达到用机器模拟人类的聪慧来处 ...

  7. ORM框架介绍——什么是ORM框架?

    1.什么是ORM?对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术.ORM框架是连接数据库的桥梁,只要提供 ...

  8. ETL工具 Flume (一)

    分布式日志采集系统Flume学习 一.Flume架构 1.1 Hadoop业务开发流程 1.2 Flume概述 flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统. 支持在日志系统 ...

  9. DelayQueue达到定时触发效果

    DelayQueue的特点就是插入Queue中的数据可以按照自定义的delay时间进行排序.只有delay时间小于0的元素才能够被取出. 这样子,只要开启一个线程循环从DelayQueue中取值执行, ...

  10. 高通cDSP简单编程例子(实现查询高通cDSP使用率、签名),RK3588 npu使用率查询

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...