博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二丶Python字符串1
阅读量:5298 次
发布时间:2019-06-14

本文共 2330 字,大约阅读时间需要 7 分钟。

Python编程-字符串入门

字符串的基础用法

  • 此处省略

字符串的拼接

  • 将两个字符紧挨着写在一起,Python就会自动拼接
"BuBuPython""get-up"    'BuBuPythonget-up'
  • 使用加号 + 拼接两个字符串
st1 = "我要学"    st2 = "Python"    st1 + st2    # '我要学Python'    #这里的st1、st2是我定义的两个字符串
  • 不同类型字符串拼接,拼接前需使用str()或repr()函数进行转化
pt1 = 25    pt2 = 11.3    ##TypeError:st1+pt1    st1 + str(pt1)#'我要学25'

repr函数,input获取用户数据

  • repr()会以Python表达式的形式来表示值
st2 = "羞愧难当"    print (st2)    #羞愧难当        st2 = repr("羞愧难当")    print (st2)     #'羞愧难当' #可以使用repr()函数来强制Python字符类型的表现形式
  • Python 获取用户输入
    input()向用户生成一条提示,然后获取用户的输入内容
name = input("请输入你的名字:")    print (name)    #请输入你的名字:帅B    #帅B#这次因为是执行两行代码,所以不能直接在IDE中打印,需要创建一个Python文件然后保存按F5来执行#执行后会直接跳出“请输入你的名字:”输入结果后程序获得结果并打印出来“帅B”
  • Python2.x的raw_input()相当于Python3.x中的input()
  • Python2.x的input()函数则比较怪异

    长字符串与原始字符串

  • 长字符串使用三个引号(单引号、双引号都可以)括起来
st8 = '''你好    很高兴认识你    我叫田暴雷    叫我大雷就好    '''    print (st8)    #你好    很高兴认识你    我叫田暴雷    叫我大雷就好    #像这种字符串很长的字符,就可以用三组单引号来定义(赋值)
  • Python会允许使用转义符(\)对换行符转义,这样也可以定义字符串
    这里要实现“\”需要多打两个或者三个才阔以 ̄□ ̄||
  • 原始字符串
  1. 原始字符串以r开头,原始字符串不会把反斜杠\当成特殊字符
st = r'老司机带带我!\n我要成大佬!'    print (st)    老司机带带我!\n我要成大佬!    这里就成功的将\\当成一个字符串打印出来了
  • 如果原始字符串中包含引号(一组引号的其中一个时),程序同样需要对引号进行转义(否则Python同样无法对字符串的引号精确匹配)
st7 = r'教练我要学‘开车'    print (st7)   > 教练我要学‘开车       st7 = '教练我要学'开车'        #SyntaxError: invalid syntax   #这里运行报错,加上\\转义符后就可以将'号转为原始字符,如下       st7 = '教练我要学\'开车'    print (st7)   #教练我要学'开车    st7 = "教练我要学\'开车"    print (st7)    #教练我要学'开车

我试了试在一个数组中加一个独立的引号,运行直接报错了(需要再idle执行才可以)

字节串与字符串

  • 字符串(str)由多个字符组成;字节串(bytes)由多个字节组成
  • bytes和str除了操作的数据单元不同之外,它们所支持的方法都基本相同,bytes也是不可变序列

    <-------何为可变序列何为不可变序列----->

  • 字符串和字节串间的相互转化
    1. 将字符串转换成bytes对象有如下三种方式:

      . 如果字符串内容都是字符,可以通过直接在字符串之前添加b前缀来构建字节串值
      ```python
      st7 = b'你好'
      print (type(st7))
      #SyntaxError: bytes can only contain ASCII literal characters.

      st7 = b'abc'  print (type(st7))

```

.调用butes()函数(其实是bytes的构造方法)将字符串按指定的方式转化为字节串或转化为指定类型的字节串,默认使用UTF-8字符集
st6 = "我爱我家".encode()            print (st6)         > b'\xe6\x88\x91\xe7\x88\xb1\xe6\x88\x91\xe5\xae\xb6'
.调用字符串本身的encode()方法将字符串按指定字符集转化成字节串,默认使用UTF-8字符集
st6 = bytes("我爱我家","UTF-8")            print (st6)        #b'\xe6\x88\x91\xe7\x88\xb1\xe6\x88\x91\xe5\xae\xb6'        #这种方式要加字符集否则Python会直接报错,不能正常运行
2.调用bytes对象的decode()方法将bytes对象解码成字符串
st9 = b'\xe6\x88\x91\xe7\x88\xb1\xe6\x88\x91\xe5\xae\xb6'        print (st9.decode("UTF-8"))    #我爱我家

转载于:https://www.cnblogs.com/mlcg/p/11300728.html

你可能感兴趣的文章
和小哥哥一起刷洛谷(1)
查看>>
jquery对id中含有特殊字符的转义处理
查看>>
遇麻烦,Win7+Ubuntu12.10+Archlinux12.10 +grub
查看>>
SqlBulkCopy大批量导入数据
查看>>
pandas 修改指定列中所有内容
查看>>
「 Luogu P2285 」打鼹鼠
查看>>
lua语言入门之Sublime Text设置lua的Build System
查看>>
vue.js基础
查看>>
电脑的自带图标的显示
查看>>
[转载] redis 的两种持久化方式及原理
查看>>
C++ 删除字符串的两种实现方式
查看>>
ORA-01502: 索引'P_ABCD.PK_WEB_BASE'或这类索引的分区处于不可用状态
查看>>
Java抽象类和接口的比较
查看>>
php连接postgresql数据库
查看>>
开发进度一
查看>>
MyBaits学习
查看>>
管道,数据共享,进程池
查看>>
CSS
查看>>
[LeetCode] 55. Jump Game_ Medium tag: Dynamic Programming
查看>>
[Cypress] Stub a Post Request for Successful Form Submission with Cypress
查看>>