检测字符串长度的方法:len()

检测字符串是否含有字母的方法:str.isalpha()

检测字符串是否含有数字的方法:str.isnumeric()

检测字符串是否有大写字母:str.upper()

检测字符串是否含有小写字母:str.lower

更多is.xxx的方法,请参考:

https://docs.python.org/3/library/sdtypes.html#string - methods

代码案例:

def check_numbers_exist(password_str):
"""
判断字符串是否含有数字
"""
for c in password_str:
if c.isnumeric():
return True
return False
def check_letter_exit(password_str):
"""
判断字符串是否含有字母
"""
for c in password_str:
if c.isalpha():
return True
return False def main():
"""
主函数
:return:
"""
password = input("请输入您的密码:")
#密码强度
strength_password = 0
#规则1
if len(password) >= 8:
strength_password += 1
else:
print("密码长度至少是8位!")
#规则2
if check_numbers_exist(password):
strength_password += 1
else:
print("密码没有含有数字")
#规则3
if check_letter_exit(password):
strength_password += 1
else :
print("密码没有含有字母")
if strength_password == 3:
print("密码强度合格!")
else :
print("密码强度不合格!") if __name__ == '__main__':
main()
学习编写这个代码出现了一个小错误,控制台报错是:str' object is not callable

Traceback (most recent call last):
File "D:/Program Files (x86)/pycharm install/pycharm wenjianjia/Password/Password_V1.0.py", line 61, in <module>
main()
File "D:/Program Files (x86)/pycharm install/pycharm wenjianjia/Password/Password_V1.0.py", line 45, in main
if check_numbers_exist(password):
File "D:/Program Files (x86)/pycharm install/pycharm wenjianjia/Password/Password_V1.0.py", line 21, in check_numbers_exist
for c in password_str():
TypeError: 'str' object is not callable

原来是我之前在编写的时候粗心在for c in password 这个遍历里多了个括号

学习python 检测字符串的方法的更多相关文章

  1. 学习python的字符串的方法

    今天看了下学习视频,发现str也有许多方法,才发现昨天了解的关于字符串知识甚少,所以今天查看了python的源码,学习一些新的方法 以下是我把边对照着源码边翻译,边尝试实现方法 1.第一个字符有大写字 ...

  2. 零基础学习 Python 之字符串

    初识字符串 维基百科对于字符串的定义式:字符串是由零个或者多个字符组成的有限串行.你之前学会敲的第一行 print 代码里的 "Hello World",就是一个字符串.字符串的本 ...

  3. python反转字符串(简单方法)及简单的文件操作示例

    Python反转字符串的最简单方法是用切片: >>> a=' >>> print a[::-1] 654321 切片介绍:切片操作符中的第一个数(冒号之前)表示切片 ...

  4. 【Python学习笔记】字符串拼接方法(5种)总结

    字符串的 5 种拼接方法: “+”号 “,”号 直接连接 格式化 多行字符串拼接 第一种:“+”号 print("Hello"+"Python") 打印结果: ...

  5. Python中字符串的方法及注释

    先整理到这里:用的时候便于查询.相当于自己的资料库吧. capitalize()   把字符串的第一个字符改为大写 casefold()   把整个字符串的所有字符改为小写 center(width) ...

  6. 身为一个小白,看到一篇值得看的文章。讲述小白学习python的6个方法。

    01. Python怎么学?   Python虽然号称非常简单,功能强大!但是再简单,它也是一门编程语言,任何一个编程语言都会包含: 内功,心法和招式,内功心法就是指的算法,数据结构: 招式就是任何一 ...

  7. python 替换字符串的方法replace()、正则re.sub()

    一.replace()函数1用字符串本身的replace方法: a = 'hello word' b = a.replace('word','python') print b   1 2 3 二.re ...

  8. ES6学习笔记之字符串新增方法

    1.字符串的子串识别 传统上,Javascript 只有indexof 方法,用来确定一个字符串是否包含在另一个字符串中.如: //indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的 ...

  9. python之字符串及其方法---整理集

    字符串方法 1.capitalize方法:字符串首字母大写 举例: test="alex" v=test.capitalize() print(v) 返回结果: Alex 2.ca ...

随机推荐

  1. 2-Add Two Numbers @LeetCode

    2-Add Two Numbers @LeetCode 题目 思路 题目中得到的信息有: 这是两个非负数,每位分别保存在链表的一个结点上: 逆序保存,从低位到高位依次. 一般整数的相加都是从低往高进行 ...

  2. Python Faker的使用(1):基础使用方法与函数速查,生成随机数据

    在软件需求.开发.测试过程中,有时候需要使用一些测试数据,针对这种情况,我们一般要么使用已有的系统数据,要么需要手动制造一些数据. 在手动制造数据的过程中,可能需要花费大量精力和工作量,现在好了,有一 ...

  3. C# EnumHelper Enum的值,Description,ToString()的相互转换

    首先定义枚举类型,如下: /// <summary> /// 板块 /// </summary> public enum Plate {         [Descriptio ...

  4. 解决thinkPHP3.2.3使用Smarty模板后无法使用系统常量问题

    https://blog.csdn.net/u014520745/article/details/52029411 在ThinkPHP/Library/Think/View.class.php 输出模 ...

  5. Python3 多线程例子

    import threading, zipfile class AsyncZip(threading.Thread): def __init__(self, infile, outfile): thr ...

  6. ubuntu 安装kafka

    下载 wget http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.12-2.0.0.tgz 解压 tar -zxf kafka_2.12-2. ...

  7. Django之 静态模板渲染

    既可以简单的 django.http.HttpResponse 来把内容显示到网页上,也可以使用渲染模板的方法来显示内容. 说明:代码是基于 Django 1.8,但 Django 1.4 - Dja ...

  8. django 防止xss攻击标记为安全的二种方法

    str='<a href="/page?page=1">1</a>' 一,在前端模板语言中实现,只须用到帮助函数safe.如: {{ str|safe }} ...

  9. 关于使用easyui 中提示dialog is not a function的问题

    我们经常在一些项目使用easyui,当然必不可少都会用到dialog这个功能,但是有时候你会发现: 明明我的代码没有错误,调用的规范按照API的来撰写,但是还有会报 $(...).dialog is ...

  10. JetBrains GoLand 注册码

    选择license server 输入 http://idea.youbbs.org 完成 要求联网