#20190131 ''' 检查ipV4的有效性,有效则返回True,否则返回False,(提示使用split函数进行分割) ''' import os def print_ping_ip(ip): s = os.system('ping '+ip) if s == 0: return True else: return False
''' 检测密码强度 c1 : 长度>=8 c2: 包含数字和字母 c3: 其他可见的特殊字符 强:满足c1,c2,c3 中: 只满足任一2个条件 弱:只满足任一1个或0个条件 ''' import string def print_mima_jianyan(stra): flag = 0 num = 0 digit = 0 if len(stra) >= 8: flag = 1 for i in stra: if i in string.ascii_letters: num = 1 elif i in string.digits: digit = 1 elif i in string.punctuation: flag += 1 #num_sum = num+digit result = num+digit+flag if (result <= 1) or (flag == 0 and num+digit == 2): print("弱:只满足任一1个或0个条件") if (flag >= 2 and num+digit <= 1) or (flag == 1 and num+digit == 2): print("中: 只满足任一2个条件") if flag >= 2 and digit+num >=2: print("强:满足c1,c2,c3")
''' 求两个集合的交集和并集 ''' def print_jiaoji_bingji(lista,listb): num_lista = [] num_listb = [] for i in lista: if i in listb: num_lista.append(i) else: num_listb.append(i) for j in listb: if j not in num_lista: num_listb.append(j) print(lista) print(listb) print("交集:",num_lista) print(num_listb) print("并集:",num_lista+num_listb)
''' 判断一个字符串是否为回文字符串 ''' def print_huiwen(stra): if stra[::] == stra[::-1]: print(stra," 是回文") else: print("不是回文!!")
#20190201 ''' 不区分大小写对包含多个字符串对象的列表进行排序,显示排序后的结果还需要显示大小写不变的原字符串 ''' def print_str_sort(strlist): print("原字符:",strlist) strlist.sort() print("排序后的字符:",strlist)
''' 一个数如果恰好等于它的因子之和,这个数就称为完数,例如6的因子为1,2,3,而6=1+2+3,因此6是完数,编程找出1000之内的所有完数,并按6 its factors are 1,2,3这样的格式输出 ''' def print_wangshu(): num_dict = {} num = 0 for i in range(1001): for j in range(1,i): if i%j == 0 and i not in num_dict.keys(): num_dict[i] =[j] elif i%j == 0 and i in num_dict.keys(): num_dict[i].append(j) for k,v in num_dict.items(): if sum(v) == k: print(k," its factors are ",v)
''' 写一个函数,识别输入字符串是否是符合 python 语法的变量名 (不能数字开头、只能使用数字和字母以及‘_’) ''' import string def print_variable(): num = input("请输入一个变量名:") if num[0] in string.digits: return "python变量名不能以数字开头" for i in num: if (i not in string.digits) and (i not in string.ascii_letters) and (i not in '_'): return "只能使用数字和字母以及‘_’" return "符合python变量命名"
''' 一个句子中的所有数字和标点符号删除 ''' def print_str_del_digit_punctuation(stra): num = '' for i in stra: if (i not in string.digits) and (i not in string.punctuation):
num += i print("原来的字符:",stra) print("筛选后的字符:",num)
''' 自定义实现strip()---只能移除头尾指定的字符串 ''' def print_strip(stra,sep): num = '' if stra[0] == sep: num = stra[1:] elif stra[-1] == sep: del stra[-1] print(stra)