python基础第四天_str_方法

Posted 枫若雪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础第四天_str_方法相关的知识,希望对你有一定的参考价值。

所有的练习都是用的python3 ,还没试过python2

############## 必须要会的6个基本方法 ##############

join 

split

find

strip

upper / lower

#!/usr/bin/env python
# coding:utf-8

# 关于方法中的参数,必要参数和可选参数的比喻太生动了。
# 几个字符串方法

test = "alexamdexr"
a = test.casefold() #更牛逼的小写,支持多国语言
print(a)

b = test.lower() #常用的小写,支持英语
print(b)

c = test.capitalize() #首字母大写
print(c)

d = test.center(20,"$") # 占位多个,并且把自己放中间,其余位置补充字符,默认为空格
print(d)
d2 = test.ljust(20,"!") # 把自己放左边
d3 = test.rjust(20,"#") # 把自己放右边
print(d2)
print(d3)

e = test.count(ex) #寻找子序列出现的次数,也可以指定起始
print(e)

f = test.find(am,3,6) # 寻找子序列,返回下标,找不到返回 -1
print("find的结果:",f)
# 字符串函数中的参数,都常是>= 和 < 的。如test.find("am", 3, 5) 的位置就是3和4,小于5

g = test.startswith("e") #是否以 * 开头
print(g)
h = test.endswith("ex") # 是否以 * 结尾
print(h)
#!/usr/bin/env python
# coding:utf-8

tst = "thisisasb        11    22"
# expandtabs()是将字符串里面的tab制表符换成空格,如果没有指定tabsize参数,默认一个tab转化成8个空格。
m = tst.expandtabs(1)
print(m)

test ="username: admin\tpassword: 123\temail: [email protected]\nusername: user\tpassword: 1234\temail: [email protected]\nusername: tomashe\tpassword: 123456\temail: [email protected]\n"
v = test.expandtabs(20)
print(v)
# 输出了整齐的列表形式。

 

字符串的函数很多,挑了一些可能会用到的做了练习。 还是pycharm的 按住 ctrl 点击 str 可以很方便地找到解释。

#!/usr/bin/env python
# coding:utf-8

# format 将一个字符串中的占位符替换为指定的值
test = i am {name}, age {a}
print(test)
a = test.format(name="Tom",a=32)
print(a)

test2 = you are {0}, age {1}
b = test2.format("SB",12)
print(b)


c = test.format_map({"name":"Jerry", "a":43})
print(c)

# index找不到直接报错 建议使用find()
# d = test.index("d")

# isalnum 判断字符串是否只有字母和数字
test3 = "abc_123"
e = test3.isalnum()
print(e)

# 汉字也算alpha
tt = "abcde中国"
e2 =tt.isalpha()
print("是否字母",e2)

# 练习 str 中的其它方法
# strip()除去两边空格; lstrip()去左边的, rstrip()去掉右边的; 默认\r\t\n也能去掉
te = "   abCd  efder  "
f = te.strip()
print(f)

te2 = "abcdefab"
f2 = te2.lstrip("ab") # 也可以指定去除字符串
print("lstrip: ",f2)
f3 = te2.rstrip("ab")
print(f3)


g = te.swapcase() # 大小写全换
print(g)

h = te.replace("d","z") #字符串替换
print(h)

j = test.title() # 每个单词首字母大写
print(j)

k = j.istitle() # 是否title
print(k)

tst = "2345③"
v1 = tst.isdecimal() #带圈的不算
v2 = tst.isdigit() # 带圈的数字也算
v22 = tst.isnumeric() # 带圈的,中文的都能识别
print("是否数字:",v1, v2,v22)

v3 = "1234.45" # 小数点就不是数字了。
v4 = v3.isdigit()
v5 = v3.isdecimal()
v55 = v3.isnumeric()
print(v4,v5,v55)
#!/usr/bin/env python
# coding:utf-8

import keyword

print(keyword.iskeyword("def"))

# 标识符 字母 数字 下划线
t = "_def32 "
v = t.isidentifier() #是否标识符, 空格不是
print("isidentifile",v)

v2 = t.isprintable() # 是否有不可见字符,如\n \t
print(v2)

t2 = " "
v3 = t2.isspace() # 是否空格 \t\n\r 也算. 空字符串不算。
print("isspace ",v3)

# ***** 很重要的一个函数 join 要劳记
test = "你是风儿我是沙。 You are wind i am dust. 123456"
res = "_".join(test)
print(res) # 结果连空格都被join了。


a1 = "abcdefghijklmnopqrst"
m1 = str.maketrans("aeio", "2345") # 先建立对应关系
a2 = a1.translate(m1) # 将字符串中找到替换成对应的。
print(a2)

b1 = "tom;jerry;karl;hand"
c1 = b1.partition(";") # 以指定的字符串为分隔,从左边找到的第一个为准,将其分为三段,分隔符也作为一个元素
print(c1)

c2 = b1.rpartition(";") # 从右边找到的第一个为准.
print(c2)

c3 = b1.split(";") # 以指定字符串为分隔,完全分割。但是不保留分隔符本身。
print(c3)
c4 = b1.split(";",1) #指定最多分一个。
print(c4)
# 以后会有一个表达式版的计算器。
# 后续学到正则表达式时,将包含有以上2个函数的功能。


d1 = "abcde\nfghikj\ndaemon"
e1 = d1.splitlines() # 以换行符来分割, 如果加参数True ,则保留换行符
print(e1)
# 方法太多,只能大概有个印象,不可能背会。 所以要使用IDE查看定义。

 

以上是关于python基础第四天_str_方法的主要内容,如果未能解决你的问题,请参考以下文章

python 基础学习第十四天

Day04_JAVA语言基础第四天

python设计模式第二十四天命令模式

2016.3.23__ JavaScript基础_3__第十四天

初学python第十四天的随堂笔记

IT十八掌作业_java基础第十四天_IO