Python学习 三
关于 and, or
#! /usr/bin/env python #-*- conding: utf-8 -*- a = '123' b = 4 ''' and ,or 在优先级一文中可以看出and, or 处于同一级别 因此在计算一连串的and, or时需要记住 断点规则
不过在写代码时最好使用括号 ''' #例如 c = a == '11' and b == 4 or a == '123' and b == 5 #c 的结果为false 在python中 计算从左到右编译计算 如果遇到逻辑运算符and且其左边表达式结果为false 则停止运算结果为false 如果遇到逻辑运算符or 且其左边表达式为true 则停止运算结果为true
关于数字的函数
#! /usr/bin/env python #-*- conding: utf-8 -*- int ('123') # int () 方法 将字符串转换为数字 (字符串不能有字母) int ('0011', base = 2) #结果为3 base表明参数的进制类型 在转换为10进制输出 a = 2 a.bit_length() #表示2的二进制最小为几位 (不包括符号位) a = 3 a.bit_length() # 结果为2
关于字符串的函数
#! /usr/bin/env python #-*- conding: utf-8 -*- str = 'alex' str.capitalize() # 结果为Alex 首字母大写 str = 'liZYN' str.casefold () #结果为 lizyn 转化为小写 str.lower () #结果为lizyn 转化为小写 str.islower() #判断字符是否为小写 str.isupper() #判断是否为大写 str.upper() #转化为大写 # casefold 与 lower的区别 ''' lower只能支持英文字母 casefold 则可以支持更多语言 ''' str = 'zyn' str.center(10, '*') #结果为'***zyn****' 第一个参数指填充到10位并且str居中 第二个参数指 以什么来填充 默认为空格且第二个参数的字符长度为只能为1 待续 str = 'lizynzzz' str.count('z') #结果为4 统计参数在str中出现了几次 str.count('z', 4, 6) #结果为1 后两个参数代表开始位置 到结束位置 (计算是不会包括结尾) str = 'lizyn' str.endswith('n') # 判断是否以这个参数结尾 是返回true 否返回false 参数可以为多字符, 同样存在第二,第三个参数来表示开始和结尾 (计算时不会包括结尾) str.startswith('l') # 与endswith相反 str = 'lizynz' str.find('z') #找到第一个 z 返回其位置 找不到返回-1 同样存在第二,第三个参数来表示开始和结尾 (计算时不会包括结尾) str = 'lizyn is a {name}' print(str) # 结果为'lizyn is a {name}' str.format(name = 'lizyn') #结果为 'lizyn is a lizyn' 可添加多个参数 # 如果 str = 'lizyn is a {0}' 则 str.format('lizyn') 可以不再起名 str.format_map( {'name' : 'lizyn'} ) # 结果也为 'lizyn is a lizyn' str = 'lizyn' str.index () # 与find的一样可以找字符 但找不到会报错 str.isalnum() #判断字符串只能有字母或数字 成功为true 失败为false str = '1234\t55' str.expandtabs(3) #结果为'1234 55' 它会每次数3个字符遇到\t以空格补齐3个字符 #作用 str = "name\tage\t\nlizyn\t18" print (str.expandtabs (10)) ''' 结果为 name age lizyn 18 ''' str.isalpha() #判断字符串只能有字母或汉字 成功为true 失败为false str.isdecimal() #判断字符串是否为数字 特殊地数字或汉字数字失败 成功为true 失败为false str.isdigit() #判断字符串是否为数字 不过这个判断如果为特殊地数字也成功(②) 汉字数字不成功 成功为true 失败为false str.isnumeric() #判断字符串是否为数字 判断如果为特殊地数字也成功(②) 汉字数字也成功 成功为true 失败为false str.isprintable() #判断字符中是否有不可见字符 有为false 没有为true str.isspace() #判断是否全部是空格 是为true str.title() #转换为标题的形式 例如 li is a ===> Li Is A str.istitle() #判断是否为正确标题格式 是为true a = 'abc' b = ' ' b.join(a) #结果为 'a b c' 参考js的join str.ljust(10, '*') #把str放在10个*的左边 str.rjust(10, '*') #把str放在10个*的右边 str.zfill(10) # 不指定字符 在str的前边放10个0 str.isidentifier() #判断字符串是否为标识符(参考变量的定义规则) 成功为true 失败为false str.lstrip() str.rstrip() str.strip() #参考 php的 ltrim() rtrim() trim() m = str.maketrans('abcdef', '123456') #作对应关系 v = 'abcdef' v.translate(m) #结果为 123456 a=>1 b=>2 c=>3 ..... str.partition() #在字符串左边找到第一个字符 切割为3份 abcdbd => ('a', 'b', 'cdbd') str.rpartition() #在字符串右边找到第一个字符 切割为3份 abcdbd => ('abcd', 'b', 'd') str.split() # 例子 abcabcabc => ['ab', 'ab', 'ab', ''] 第二个参数代表找几次分割
str.replace() #替换
range() 函数创建于php类似 但 python3不会立即创建 只有当你用时才会给你调用一个

浙公网安备 33010602011771号