AI智能
改变未来

Python字符串及基本操作(入门必看)

收录于话题

#Python入门

27个

       

     基础入门的知识一直没有更新完,今天小张接着给大家带来入门级的字符串的常用操作。本文适合刚入门的小白,大佬们请绕过。

一、定义

字符串的意思就是“一串字符”,比如“Hello,Charlie”是一个字符串,“How are you?”也是一个字符串。
Python 要求字符串必须使用引号括起来,使用单引号也行,使用双引号也行,只要两边的引号能配对即可。
简单说下几个特点:

  • 1.字符:即单一的文字符号,

  • 2.字符串:即是有序的字符组成的序列,其中用 \’、 \” 、   \’\’\’    、\”\”\”、 括起来的内容

  • 3.索引:一排数字反映第某个位置的字符,索引的下表是从0 开始的,使用 中括号 [ ] 来获取数据,反向的话是从-1开始的
    例如 :

1s = \"刘德华很帅但是张国荣更\"
2print(s[-4] +s[2] +s[1] + s[0])
3# 结果
4张 华 德   刘

二、常用操作

切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的,即有返回值

  • 1.upper()  转换成大写 ,忽略小写的时候用  与之对应的是lower()

1while True:
2    content = input(\"请输入你要喷的内容(输入Q退出):\")
3    if content.upper() == \'Q\': # 当用户输入q或者Q的时候退出. 这里要忽略大小写
4        break
5    print(content)
  • 2.strip() 去掉左右两端的空白,包括括号及\\n 和\\t,用户内容输入有空白时用

1username = input(\"请输入用户名:\").strip()
2password = input(\"请输入密码:\").strip()
3if username == \"xiaozhang\" and password == \"123\":
4    print(\"成功\")
5else:
6    print(\"失败\")   #假如用户输入   xiaozhang 时,前面或者后面有空格 不好判断,此时可以这样用,能保证用户正确登陆
  • 3.replace(\”old\”,\”new\”)字符串 替换

1s = \"xiaozhang is a handsome man\"
2s1 = s.replace(\"handsome\",\"nice\")
3s2 = s.replace(\"a\",\"AB\",2)   #将a 替换成AB,替换2次
4print(s1)   #xiaozhang is a nice man
5print(s2)  #    xiABozhABng is a handsome man 
  • 4.split(\”以那个切割\”,次数)  字符串切割   结果是list(列表),默认以空白切割

1s = \"xiaozhang_qq_niannian\"
2s1 = s.split(\"_\")   # 以哪个切割,哪个就要丢失
3s2 = s.split(\"xiaozhang_qq_niannian\")   #切割的内容在边上. 会出现空字符串
4s3 = s.split(\"x\",1)    #   结果为[\'\', \'iaozhang_qq_niannian\']
5print(s1)   #   结果为[\'xiaozhang\', \'qq\', \'niannian\'] 
6print (s2)   #  结果为 [\'\', \'\']

与之对应的还有rsplit()
string.rsplit(separator, max)
方法从右侧开始将字符串拆分为列表。
如果未指定 \”max\”,则此方法将返回与 split() 方法相同的结果。
注释:若指定 max,列表将包含指定数量加一的元素。

  • 5.startswith(\”以哪个开始\”) 判断是否以xxx开头 与之对应的是endswith 输出结果为False和True

1s = \"今天的内容非常简单.你们信吗? 作业也很容易. 就是整理不太好\"
2print(s.startswith(\"今天\"))      #True
3print(s.endswith(\"太好\")) #True
  • 6. find() 查找变量出现的位置,显示索引,如果查不到为-1,如果是index查找,没有的话程序会报错

1s = \"小张学Python公众号值得推荐\"
2print(s.find(\"哈哈\")) # 如果找不到返回-1  
3print (s.find (\"小\"))  #   结果为0 找到了 显示索引号码  0
  • 7. isdigit() 判断是否是数字组成(整数)  结果为False 和True  同理 isupper(判断是否是大写) islower(判断是否为小写) .isalpha(是否为字母)

1s = \"1234\"
2print (s.isdigit()) # 显示 True,如果字符串中有字母或者标点符号即为False
  • 8. len()  求长度. 内置函数

1s = \"小张学Python公众号值得推荐\"
2print(len(s)) #  16  返回给你字符串的长度
  • 9.count(\”\”) 计数

1s = \"小张学Python公众号值得推荐!推荐!推荐!\"
2print(s.count(\"推荐\")) # 计数  显示 3
3s = \"小张学Python公众号值得推荐!推荐!推荐!\"
4print(s.count(\"推荐\",0,20))# 结果显示 2
  • 10.center()   居中

1a = \"小张学Python\"
2print (a.center(20,\"*\"))
3#结果:
4*****小张学Python******
  • 11.rjust()   右对齐

1print (a.ljust(20,\"*\")) 
2#结果:
3***********小张学Python
  • 12.ljust()   左对齐

1print (a.ljust(20,\"*\")) 
2#结果:
3小张学Python***********
  • 13.迭代
    格式:

1for 变量 in 可迭代对象:    
2   代码块      #可迭代对象中的每一个元素,分别赋给前面的变量,,可以将迭代对象遍历.

字符串就是可迭代的对象
记住报错: TypeError: \’int\’ object is not iterable   int对象是不可迭代的
例子:

1ss = \"小张学Python公众号值得推荐\"
2for cc in ss:
3    print(cc) #以此打印每个字符
4#或者利用while方法
5count = 0
6while count < len(ss):
7    print(ss[count])
8    count += 1
  • 14 切片
    格式:
    srt[start:end:step]
    从start开始截取,到end结束,但不包括end,step不写的话默认是1且从左往右切,step正数从左往右,如果是负数,从右往左,每n个取1个例如:

1s = \"刘德华很帅但是张国荣更\"
2print(s[1:])     # 从第一个索引打印到结尾     德华很帅但是张国荣更
3print(s[:4]) #    从开头打印到第三个 即 结果为  刘德华很
4print(s[:])   #打印全部      刘德华很帅但是张国荣更
5print(s[::-1])  #更荣国张是但帅很华德刘
6print (s[:-1])  # 把最后一个字符去掉 即刘德华很帅但是张国荣
  • 15.利用切片判断是否为回文的案列:
    定义:把相同的词汇或句子,在下文中调换位置或颠倒过来,产生首尾回环的情趣,叫做回文,也叫回环。

1n = input(\"输入回文\")
2if n == n[::-1]:
3    print(True)
4else:
5    print(False)       
6#例如输入
7上海自来水来自海上,则打印True

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Python字符串及基本操作(入门必看)