以写代学:python 数据类型之字符串,判断用户输入的id是否符合要求

字符串操作符

比较操作符:字符串大小按ASCLL码值大小进行比较

切片操作符:[]、[:]、[::]

成员关系操作符:in、not in

脚本:判断用户输入的id是否符合要求

#!/usr/bin/env python

import string

#定义字符的范围
first_id = string.letters + "_"           //确定首字符的范围
all_id = string.digits + first_id         //确定其他字符的范围

#请求用户输入id
myid = raw_input("input your id: ")   //请求用户输入id

#判断id是否合法
if len(myid) < 2:   
    print " you must input id longer then 2. "
else:
    if myid[0] not in first_id:
        print "first char %s is invalid" % (myid[0])
    else:
        for ch in myid[1:]:
            if ch not in all_id:
                print "other char invalid"
                break
        else:
            print "%s is valid" % (myid)

以下将判断写成了函数,可以调用

#!/usr/bin/env python

import string

first_chr = string.letters + "_"
all_chr = first_chr + string.digits

myid = raw_input("input your id: ")

def id_check(myid):
    if len(myid) < 2:
        print "you must input char longer than 2. "
    else:
        if myid[0] not in first_chr:
            print "your first char is invalid"
        else:
            for i in range(len(myid[1:])):
                ind = i + 1
                if myid[ind] not in all_chr:
                    print "char is invalid in position %s" % ind
            else:
                print "your id is valid"

if __name__  == "__main__":
    id_check("123")
    id_check("abc")

时间: 2024-10-12 15:22:25

以写代学:python 数据类型之字符串,判断用户输入的id是否符合要求的相关文章

以写代学:python 原始字符串操作符&&字符串内建函数

原始字符串操作符 (1)原始字符串操作符是为了对付那些在字符串中出现的特殊字符 (2)在原始字符串里,所有的字符都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符 (3)比如在windows写路径时经常会把出现以下情况 2.字符串内建函数 (1)每次都不会改变字符串原本的值 (2)字符串.函数 或者将字符串赋值给函数后写成变量名.函数是都可以的 (3)还有很多的内涵函数,下边只是举例说明 >>> import tab        >>> hi = "

以写代学:python 模块简介&输出用户指定位数密码的脚本

什么是模块 (1)模块是从逻辑上组织python代码的形式 (2)当代码量变的相当大的时候,最好把代码分成一些有组织的代码段,前提是保证它们的彼此交互 (3)这些代码段之间有一定的联系,可能是一个包含数据成员和方法的类,也可能是一组相关但彼此独立的操作函数 (4)模块名不能乱起,字母数字下划线组成,首字母不能是数字 导入模块 (1)使用import导入模块,模块被导入后,程序会自动生成pyc的字节码文件以提升性能 (2)模块属性通过"模块名.属性"的方法调用,如果仅需要模块中的某些属性

[零基础学python]玩转字符串(1)

如果对自然语言分类,有很多中分法,比如英语.法语.汉语等,这种分法是最常见的.在语言学里面,也有对语言的分类方法,比如什么什么语系之类的.我这里提出一种分法,这种分法尚未得到广大人民群众和研究者的广泛认同,但是,我相信那句"真理是掌握在少数人的手里",至少在这里可以用来给自己壮壮胆. 我的分法:一种是语言中的两个元素(比如两个字)和在一起,出来一个新的元素(比如新的字):另外一种是两个元素和在一起,知识两个元素并列.比如"好"和"人",两个元素和

[零基础学python]玩转字符串(2)

上一章中已经讲到连接两个字符串的一种方法.复习一下: >>> a= 'py' >>> b= 'thon' >>> a+b 'python' 既然这是一种方法,言外之意,还有另外一种方法. 连接字符串的方法2 在说方法2之前,先说明一下什么是占位符,此前在讲解变量(参数)的时候,提到了占位符,这里对占位符做一个比较严格的定义: 来自百度百科的定义: 顾名思义,占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号. 根据这个定义,在python里面

以写代学:python 格式化操作符

1.简介 (1)%s优先使用str()函数进行转换,但是后边可以跟列表,数字,字符串 "%s%s" % ("name","age")显示多个字符 (2)%c  转换成字符 (3)%d或者%i,转换成整数 (4)%o转化为无符号8进制或16进制,如果加#号就会是有符号的 (5)%e或%E转换为科学计数法 (6)%f或%F转换为浮点数,可以在f前面加x.y   x代表总位数,y代表小数点右边的位数 2.脚本实例 用户输入内容,打印在屏幕上,如下图 #

以写代学:python 良好的代码风格实例解析

将用户输入的数据存入到一个文件当中去,这个文件必须是原来不存在的 (1)起始行 (2)模块文档字符串 (3)导入模块 (4)全局变量声明 (5)类定义 (6)函数定义 (7)程序主体 #!/usr/bin/env python import os      //导入os模块 content = []   //定义一个列表 #输入一个文件名,如存在提示重新输入while True:    fname = raw_input("filename: ")    if not os.path.

Python数据类型之字符串及其转义

字符串 与数字一样,字符串也是值,用单引号或双引号括起来. 'Hello world!' 或 "Hello world!" 字符串的转义 当我想在屏幕上输出 Let's go! 时可以这样写 print("Let's go!")>>> Let's go! 当输出内容有'时  可以用双引号来标识字符串的开始和结尾. 如果想输出在屏幕上的字符串中有双引号时,可以用单引号来标识字符串的开始和结尾. print(' "hello world!&q

Python 数据类型之字符串

格式化字符串 参数替换(类的对象,方法调用,返回一个字符串) >>> username = 'root' >>> password = 'foxconn168!' >>> "{0}'s password is {1}".format(username,password) --> 类的对象方法调用 "root's password is foxconn168!" --> 返回一个字符串 复合字段名 使用

python学习:注释、获取用户输入、字符串拼接、运算符、表达式

注释 #为单行注释'''三个单引号(或者"""三个双引号)为多行注释,例如'''被注释的内容''' 获取用户输入 input() input 接受的所有数据都是字符串,即便你输入的是数字,但依然会被当成字符串来处理.把数据转成字符串用STR(被转的数据):把字符串转成数据用int(被转的字符串). 字符串拼接 "abc"+"def"="abcdef"            "abc","