定义一个函数,输入字符串,判断是否是IP地址,输出布尔值。以及测试用例编写。

1、需求:输入字符串,如果是IP地址,输出True,如果不是,则输出False。定义一个函数,及编写测试这个函数的测试用例。

2、思路:

  1)先确认IP的格式:(0~255).(0~255).(0~255).(0~255)

  2)

import redef judge_legal_ip(input):    p = re.compile(‘^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$‘)    if re.match(p,input):        return True    else:        return False

if __name__ == ‘__main__‘:    print judge_legal_ip(‘1.23.23.89‘)

测试用例编写:

1、正常最小值用例:0.0.0.0

2、正常最大值用例:255:255:255:255

3、异常用例:255.255.255.256

4、异常用例:空字符串

5、异常用例:没有带.字符串

6、异常用例:仅带一个.

7、异常用例:仅带2个.

8、异常用例:带3个.,有字母

8、异常用例:带4个.

9、异常用例:带3个连续的点



原文地址:https://www.cnblogs.com/cailingsunny/p/10700720.html

时间: 2024-10-10 17:33:12

定义一个函数,输入字符串,判断是否是IP地址,输出布尔值。以及测试用例编写。的相关文章

Python基础课:定义一个函数,可以对序列逆序的输出(对于列表和元组可以不用考虑嵌套的情况)

1 15 def fun(arg): 2 16 if type(arg) is not tuple 3 17 and type(arg) is not str 4 18 and type(arg) is not list: 5 19 print('请输入一个序列') 6 20 return None 7 21 8 22 tmp_list = list(arg) 9 23 tmp_list.reverse() 10 24 11 25 if type(arg) == tuple: 12 26 arg

编写一个函数isMerge,判断一个字符串str是否可以由其他两个字符串part1和part2“组合”而成

编写一个函数isMerge,判断一个字符串str是否可以由其他两个字符串part1和part2“组合”而成.“组合 ”的规则如下: 1). str中的每个字母要么来自于part1,要么来自于part2; 2). part1和part2中字母的顺序与str中字母的顺序相同. 例如: "codewars"由"cdw"和"oears"组合而成: s: c o d e w a r s = codewars part1: c d w = cdw part2

c程序设计 8.15写几个函数:①输个职工的姓名和职工号;②按职工号由小到大顺序排序,姓名顺序也随之调整;③要求输入一个职工号,用折半法找出该职工的姓名,从主函数输入要查找的职工号,输出该职工

8.15写几个函数:①输个职工的姓名和职工号:②按职工号由小到大顺序排序,姓名顺序也随之调整:③要求输入一个职工号,用折半法找出该职工的姓名, 从主函数输入要查找的职工号,输出该职工. 写的时候为方便输入,我设的是输入3名职工的信息. #define N 3 #include <stdio.h> #define N 3 #define LEN 20 //定义一个结构体类型 struct student{ char name[LEN]; int num; }; int main(){ int n

java学习-如何定义一个函数及其简单练习

class FunctionDemo2 { public static void main(String[] args) { /* int sum=getSum(4,6); System.out.println("sum="+sum); */ //get(4,5)); } public static void get(int a,int b) { System.out.println(a+b); return; } /* 如何定义一个函数呢? 1.既然函数是一个独立的功能,那么该功能的

定义一个函数

Python3 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如 print().但你也可以自己创建函数,这被叫做用户自定义函数. 定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 (). 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数. 函数的第一行语句可以选择性地使用文档字符串

给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点

#include <iostream> #include <string.h> #include <stdlib.h> #include <stack> using namespace std; struct Node { int data; struct Node* next; }; struct Node* create_list(int len) { if (len <= 0) return NULL; struct Node* head; st

写一个函数对字符串数组排序,使所有变位词都相邻

题目 写一个函数对字符串数组排序,使得所有的变位词都相邻. 解答 首先,要弄清楚什么是变位词.变位词就是组成的字母相同,但顺序不一样的单词. 比如说:live和evil就是一对变位词.OK,那么这道题目的意思就很清楚了, 它并不要求我们将字符串数组中的字符串按字典序排序,否则我们直接调用STL中的sort 函数就可以了.它要求我们在排序的过程中,按照变位词的准则来排序. 这种情况下,我们还是可以调用sort函数,不过要自己写一个对比函数. 一般情况下我们如果要排序一个长度为n的数组A,我们可以这

【C语言】实现一个函数求字符串长度(不能创建第三方变量)

//实现一个函数求字符串长度(不能创建第三方变量) #include <stdio.h> #include <assert.h> int my_strlen(const char *p) { assert(p); if (*p == '\0') return 0; else return 1 + my_strlen(++p); } int main() { char *p = "abcdefg"; printf("%d\n", my_strl

Java面试题从零开始:写一个函数把字符串反转

前言:为了能够找一个代表我从零开始的诗词,我挖空心思去找,然而怎么也找不到一个贴合我心意的,被迫上了度娘也不曾找到.真想把小学一年级的语文课本拿出来好好的通读一遍,肯定能找到答案. 好了,既然找不到也不必耿耿于怀了.今天读了<高效能程序员的修炼>第四章,发现自己好烂,如果按照作者的看法,我是无论如何都入不了他的法眼,于是乎,我告诉自己,从零开始,把作者提出的面试题按照Java来写一遍,无论是参考别人还是自己略能想得到的办法,亲自动手把它们敲出来,并且记录下来吧! 写一个函数把字符串反转,作为本