专栏首页Deep learning进阶路Python随记(二)字符串

Python随记(二)字符串

Python随记(二)字符串

1、  字符串的基本操作

字符串string,也是序列(sequence)的一种,所以所有标准的序列操作:索引、分片、乘法、判断成员资格、求长度、取最小值和最大值等,对字符串来说同样适用。

但是请记住,字符串是不可变的!

2、  字符串格式化的模型

字符串格式化使用格式化操作符% 来实现。

格式化字符串时,我们可以将整个语句看成三部分

字符串模板  %  被格式化的内容

①            ②            ③

①字符串模版:

Python使用一个字符串作为模板。模板中有格式符%,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式。

比如A = “I like to eat  %s  and hotdog.’”

然后就放置一个格式符%

③被格式化内容

可以是单个的值,如一字符串或者数字,也可以是多个值,比如元组或者 字典。

例子 B = “ Humburg”.

所以当输入指令:

print A % B

得到结果

I like to eat Humburg and hotdog.

可见,原来被%s占据的位置,被B的内容填充了,这就是一个最简单的例子。

%s被成为转换说明符,它标记了需要插入转换值的位置,字母s表示 B当中的值会先被转换成字符串,然后再插入,如果不是字符串,就先用str完成转换。

果其实回想一下C++中的 printf 也是这种类似的操作

3、  转换说明符详解

你可能已经发现主要对输出格式进行控制的似乎应该是转换说明符,事实上也如此。上面例子的%s 只是很简单的一个例子。

较为常用的基本格式应为:

%  [name] [flags]  [width]  [.precision] [type]

[name] 用于选择指定的key(是字典类型中键的意思,看完字典就懂)

[flags] 转换标志,可选。

●  – 表示左对齐(默认设置似乎是右对齐);

●  + 表示在转换值之前要加上正负号;

●  “ ”空格表示正数之前保留空格;

●  0 表示转换值若位数不够用0填充

[width] 最小字段宽度,可选。表示转换后的字符串至少需要具有该值指定的宽度。

如果是*,则宽度会从值元组中读取。

[.precision] 点(.)后跟精度值。

          ●如果是实数,精度值就表示出现在小数点后的位数

          ●如果是字符串,精度值就表示最大字段宽度。

          ●如果是*,那么精度会从元组中读出。

[type] 转换类型,必选。

      ●  %c  格式化字符及其ASCII码

      ●  %s  格式化字符串

      ●  %d  格式化整数

      ●  %u  格式化无符号整型

      ●  %o  格式化无符号八进制数

      ●  %x  格式化无符号十六进制数

      ●  %X  格式化无符号十六进制数(大写)

      ●  %f  格式化浮点数字,可指定小数点后的精度

      ●  %e          用科学计数法格式化浮点数

      ●  %E          作用同%e,用科学计数法格式化浮点数

      ●  %g          根据值的大小决定使用%f活%e

      ●  %G  作用同 %g,根据值的大小决定使用%f活%e

          ●  %p  用十六进制数格式化变量的地址

4、  字符串方法

图源网络,侵删。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python随记(七)Python类与类的继承之简析

    比如定义一个person的类, Class Person ( ): ……,当我们使用这个类创建对象时,

    TeeyoHuang
  • torch.stack()的使用

    d[0][0]的位置是由a[0][0] 的 [1] , b[0][0] 的 [10], c[0][0] 的 [100] ,这3个 元素叠加构成的一个si...

    TeeyoHuang
  • caffe随记(八)---使用caffe训练FCN的pascalcontext-fcn32s模型(pascal-context数据集)

    本篇讨论利用caffe进行FCN训练(采用的是pascal-context数据集) 1、下载FCN的框架 https://github.com/shelham...

    TeeyoHuang
  • Python学习笔记六(格式化字符串)

    一周一更的Python学习楞是被我变成了一月一更,这种进度等于是前期白学了,接下来要强迫学习进度了,力争6月底前完成基础部分的学习。今天的主要内容是回顾上次关于...

    世纪访客
  • 原来,在Linux系统也有快速格式化功能

    版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢

    耕耘实录
  • U盘快速格式化与正常格式化的区别

    来源:从零开始学编程 U盘的使用中,都有进行格式化的操作过程,但是在这个操作中有两种不同的模式可以解决问题,那就是快速格式化和正常格式化,但是很多的用户对这两...

    编程范 源代码公司
  • 【nodejs原理&源码赏析(5)】net模块与通讯的实现

    net模块是nodejs通讯功能实现的基础,nodejs中最常用的功能就是作为WebServer使用,建立服务器时使用的http.createServer就是在...

    大史不说话
  • Java String.format 方法使用介绍

    String类,在JDK1.5中增加了一个非常有用的静态函数format(String  format, Objece...  argues),可以将各类数据...

    阳光岛主
  • 程序员每天该做的事

      最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多   

    ccf19881030
  • React Native聊天app实例|RN版聊天室

    RN原生app聊天应用RN_chatRoom,基于react-native+react-navigation+react+redux+react-native-...

    andy2018

扫码关注云+社区

领取腾讯云代金券