python基础--2 字符串
整型 int
python3里,不管数字多大都是int类型
python2里面有长整型long
将整型字符串转换为数字
# a='123' # print(type(a),a) # b=int(a) # print(type(b),b)
需要注意如果是浮点型的数字字符串,不能用int类型强制转换,而需要用float浮点类型
# a='12.3' # print(type(a),a) # b=float(a) # print(type(b),b)
#当前数字的二进制位,至少用n位表示
age=3 r=age.bit_length() print(r)
#字符串类型的常见内置函数用法
test = "aLax"# v = test.capitalize() # 首字母大写,除首字母以外其余都为小写,数据类型的魔法函数必须带括号 print(v)
v1=test.casefold()#将字符串转换为小写 # print(v1) # v2=test.lower() # print(v2)
# 设置宽度,并将内容居中 # 20 代指总长度 # * 空白位置填充 test = "alex" v3 = test.center(20, '*') print(v3)
# v=test.rjust(20,'*') rjust 向右填充指定字符数 # print(v) # # v=test.ljust(20,'*') ljust 向左填充指定字符数 # print(v)
# 去字符串中寻找,寻找子序列出现次数 # 可以设置查找的起始位置 # test="alaxxxx" # v=test.count('x') # print(v) # test="alaxxxx" # v=test.count('x',4,5)#第二个和第三个参数分别是起始位置和结束位置 # print(v)
# 以什么什么结尾 # 以什么什么开头,如果查找到指定字符返回True,否则Flase # test='alex' # v=test.endswith('ex',2) # v1=test.startswith('al') # print(v1) # print(v)
# 从开始往后找,找到第一个之后,获取其位置,未找到-1 test = "alexalex" v1 = test.find("ex", 5, 10) print(v1)
# 格式化,将一个字符串中的占位符替换为指定的值 # test="I am {name},age {a}" # print(test) # v=test.format(name="alex",a=19) # print(v) # 将一个字符串中的占位符替换为指定的值 # test="I am {0},age {1}" # print(test) # v=test.format('alex',19) # print(v) # 格式化,传入的值{'name':'alex,'a':19} # test="I am {name},age {a}" # v=test.format(name='df',a=10) # print(v) # v1=test.format_map({'name':'df','a':19}) # print(v1)
# index找不到报错,通过字符串查找子序列的起始位置 # test="alexalexalex" # v=test.index('ex') # print(v)
# 字符串中是否只包含字母和数字,如果是True,否则false # test="uasf890_+" # v=test.isalnum() # print(v)
# expandtabs,断句20,制表,字符串中必须包含\t test="123456aa\t123\n789\t123" v=test.expandtabs(20) print(v,len(v))
# 是否是字母,汉字 # test="as唐dr" # v=test.isalpha() # print(v)
# 当前输入是否是数字 # test="123②" # v2=test.isdecimal() 数字 # v1=test.isdigit() 数字② # v3=test.isnumeric() 数字②二 # print(v2,v1,v3)
# 大小写切换 # test='ALEX' # v=test.swapcase() # print(v)
# 判断字符串是否包含字母,数字,下划线: 标识符 # a="_123" # v=a.isidentifier() # print(v)
# 是否存在不可显示的字符 # \t制表符 \n换行符 # test="hashh\t111" # v=test.isprintable() # print(v)
# 判断是否全部都是空格 # test=" " # v=test.isspace() # print(v)
# 判断是否是标题,或把他变成标题,标题首字母要大写 # test="Return the futer" # v=test.istitle() # v1=test.title() # print(v,v1)
# &****join将字符串中的每一个元素按照指定分割符进行拼接 # test="你是风儿我是啥" # print(test) # t=' ' # v=t.join(test) # print(v) # a="b"# # b="acdef" # v=a.join(b) # print(v)
# 判断是否全部是小写和全部转换为小写 # test="ALex" # v1=test.lower() # v2=v1.islower() # print(v1,v2) # 判断是否全部是大写和全部转换为大写 # v1=test.isupper() # v2=test.upper() # print(v1,v2)
# 移除指定字符串 # 有限最多匹配 # test="xalex" # v=test.lstrip('x') # v2=test.rstrip('xea') # print(v,v2)
# 去除左右空白 # test=" \nalex " # test.lstrip() # test.rstrip() # test.strip() # v=test.lstrip() # v1=test.strip() # print(v,v1) # 去除 \t \n # v=test.lstrip() # print(v)
# test ="aeiou" # test1 ="12345" # v="funckududjjjcaaayuyiw" # m=str.maketrans(test,test1) # new_v=v.translate(m)#将字符串一一对应替换
# print(new_v)
# 分割字符串 # test="testdsd" # v=test.partition("st") # print(v) # v=test.rpartition("s")#返回一个包含分割条件的元祖,只能分割成三段 # print(v) # # v=test.split('s',2)#返回一个不包含分割条件的列表,第二个参数表示分割条件的次数 # print(v) # test.rsplit() # 正则表达式 # 是否想要分割的元素
# 分割,只能根据换行分割,True,False:是否保留换行 # test="asdfasdf\nasfdkks\nikedkk\nqkskk" # v=test.splitlines(False) # print(v)
# 大小写转换 # test="ALEX" # v=test.swapcase() # print(v)
# 将字符串替换为指定字符,第一个参数指定被替换的字符串,第二个参数替换字符串,第三个参数替换的次数 test = "alexalex" v = test.replace("ex", "bb", 1) print(v)
字符串类型常用内置方法
join()
split()
find()
strip()
upper()
lower()
replace()
#对字符串进行操作的方法
test = "证见闻妹子看过来" # for循环 # for 变量名 in 字符串 # print() count = 0 while count < len(test): print(test[count]) count += 1 print("+++++++++++") for item in test: print(item) # 索引, 下标,获取字符串中的某一个字符 # print(test[0]) # 切片 v=test[0:10] #0<= <10 v1=test[0:-1] print(v,v1) # Python3 len 获取当前字符串中有几个字符组成 # print(len(test)) # len("dasg") 字符数 # '_'.join('aadss') # a="anameljhshahljsljsj" # v=a.split('l')默认为全部分隔,可指定分个数 # print(v) # li=[11,22,33,44,'sss']#,分割计算 # print(len(li)) '''for循环 切片 索引 len''' test = "funck来吧" # 将文字对应的索引打印出来 test1 = input(">>>>") v = len(test1) for item in range(v): print(item, test1[item]) # for item in test: # print(item) # break # 帮助创建连续的数字,通过设置步长来指定不连续 # v=range(0,10,5) # # for item in v: # print(item)
字符串的注意事项
# 字符串一旦创建,就不可修改 # 一旦修改或者拼接,都会造成重新生成新的字符串 name = "hdshhs" age = '18' cname = name + age print(cname)
如果我失败了,至少我尝试过,不会因为痛失机会而后悔