zoukankan      html  css  js  c++  java
  • Python字符串前缀u、r、b、f含义

    1、字符串前加 u

    例子:

    u"字符串中有中文"

    含义:

    前缀u表示该字符串是unicode编码,Python2中用,用在含有中文字符的字符串前,防止因为编码问题,导致中文出现乱码。另外一般要在文件开关标明编码方式采用utf8。

    Python3中,所有字符串默认都是unicode字符串。

    2、字符串前加 r

    例子:

    r"
    	"

    含义:

    在普通字符串中,反斜线是转义符,代表一些特殊的内容,如换行符 。

    前缀r表示该字符串是原始字符串,即不是转义符,只是单纯的一个符号。

    常用于特殊的字符如换行符、正则表达式、文件路径。

    注意不能在原始字符串结尾输入反斜线,否则Python不知道这是一个字符还是换行符(字符串最后用表示换行),会报错:

    SyntaxError: EOL while scanning string literal

    那如果是一个文件夹路径就是以结尾怎么办呢,可以再接一个转义的字符串:

    >>>print r'C:Program Filemypath''\'
    C:Program Filemypath

    3、字符串前加 b

    例子:

    b'<h1>Hello World!</h1>'

    含义:

    前缀b表示该字符串是bytes类型。

    用在Python3中,Python3里默认的str是unicode类。Python2的str本身就是bytes类,所以可不用。

    常用在如网络编程中,服务器和浏览器只认bytes类型数据。如:send 函数的参数和 recv 函数的返回值都是 bytes 类型。

    在 Python3 中,bytes 和 str 的互相转换方式是

    str.encode('utf-8')
    bytes.decode('utf-8')

    4、字符串前加 f

    例子:

    >>> account = '测试工程师小站'
    >>> month = '30'
    >>> f'我的微信公众号是:{account},已经连续发文{int(month) * 5}天啦!'
    '我的微信公众号是:测试工程师小站,已经连续发文150天啦!'

    含义:

    Python3.6新加特性,前缀f用来格式化字符串。可以看出f前缀可以更方便的格式化字符串,比format()方法可读性高且使用方便。

    而且加上f前缀后,支持在大括号内,运行Python表达式。

    你还可以用fr前缀来表示原生字符串。

    --------------------------------------------------------------------------------

    关注微信公众号(测试工程师小站)即可在手机上查阅,并可接收更多测试分享,发送【测试资料】更可获取百G测试教程~

  • 相关阅读:
    前端打印去除水印
    mybatis实现多数据库操作(个人封装注解版本)
    vue项目用hbuilder打包成APP后,返回键退出程序的解决办法
    Java迭代器Iterator的remove()方法的使用
    零基础学Java语言(浙江大学mooc)
    Oracle查询一个字段在哪张表里
    slf4j重定向日志输出
    SpringBoot嵌入pentaho-kettle工具实现数据trans转换和job任务手动执行
    Apache的karaf启动报错
    SpringBoot扩展接口- Bean实例化前后扩展点
  • 原文地址:https://www.cnblogs.com/songzhenhua/p/13236794.html
Copyright © 2011-2022 走看看