2019独角兽企业重金招聘Python工程师标准>>>

2.1 字符串

2.1.1 字符串转换

>>> a = 123

>>> b = 1.23

>>> type(a)

>>> type(b)

>>> type(str(a))

>>> type(str(b))

说明:先定义个整数和浮点数,再查看类型,用str()函数将对象转成字符串。

这里的用到了type()函数,用于查看对象类型。这个type()在以后学习中很用的,刚开始学习时候,往往因为对象类型不对,导致程序运行报错,这时可以用它来排查问题。

2.1.2 字符串连接

# 加号字符将同类型字符连接到一起

>>> hw = "Hello" + "World!"

>>> print hw

HelloWorld!

# 两个相邻的字符串自动连接一起

>>> hw = "Hello""World!"

>>> print hw

HelloWorld!

# 如果字符串内包括单引号或双引号,要用\转义,否则报错,上一章也讲过。

>>> hw = "Hello \"World!\""

>>> print hw

Hello "World!"

# 不同字符串类型拼接

>>> a = "abc"

>>> b = 1

>>> print a + b

Traceback (most recent call last):

File "", line 1, in

TypeError: cannot concatenate 'str' and 'int' objects

说明:不同字符串类型不允许连接,想要连接可以下面这么做。

方法1:

>>> c = "%s%d" %(a,b)

>>> print c

abc1

方法2:

>>> c = a + str(b)

>>> print c

abc1

2.1.3 格式化输出

操作符号说明

%s字符串(str())

%r字符串(repr())

%d整数

%f浮点数,可指定小数点后的精度

1) 字符串格式输出三种方法

>>> xxoo = "string"

>>> print "%s" %xxoo

string

>>> print "%r" %xxoo

'string'

>>> print `xxoo`

'string'

说明:%s采用str()函数显示,%r采用repr()函数显示。repr()和反撇号把字符串转为Python表达式。

2) 保留小数点数

>>> '%.1f' %(float(100)/1024)

'0.1'

2.1.4 字符串处理

上图是字符串处理的方法,红色框框中大概有一半经常用的,我们就拿一部分常用的来举例说明。

#!/usr/bin/env python

# -*- coding: utf-8 -*-

xxoo = "Hello world!"

print "字符串长度: %s" % len(xxoo)

print "首字母大写: %s" % xxoo.capitalize()

print "字符l出现次数: %s" % xxoo.count('l')

print "感叹号是否结尾: %s" % xxoo.endswith('!')

print "w字符是否是开头: %s" % xxoo.startswith('w')

print "w字符索引位置: %s" % xxoo.find('w') # xxoo.index('W')

print "格式化字符串: Hello{0} world!".format(',')

print "是否都是小写: %s" % xxoo.islower()

print "是否都是大写: %s" % xxoo.isupper()

print "所有字母转为小写: %s" % xxoo.lower()

print "所有字母转为大写: %s" % xxoo.upper()

print "感叹号替换为句号: %s" % xxoo.replace('!','.')

print "以空格分隔切分成列表: %s" % xxoo.split(' ')

print "转换为一个列表: %s" % xxoo.splitlines()

print "去除两边空格: %s" % xxoo.strip()

print "大小写互换: %s" % xxoo.swapcase()

print "只要Hello字符串: %s" % xxoo[0:5]

print "去掉倒数第一个字符: %s" % xxoo[0:-1]

# python test.py

字符串长度: 12

首字母大写: Hello world!

字符l出现次数: 3

感叹号是否结尾: True

w字符是否是开头: False

w字符索引位置: 6

格式化字符串: Hello, world!

是否都是小写: False

是否都是大写: False

所有字母转为小写: hello world!

所有字母转为大写: HELLO WORLD!

感叹号替换为句号: Hello world.

以空格分隔切分成列表: ['Hello', 'world!']

转换为一个列表: ['Hello world!']

去除两边空格: Hello world!

大小写互换: hELLO WORLD!

只要Hello字符串: Hello

去掉倒数第一个字符: Hello world

博客地址:http://lizhenliang.blog.51cto.com and https://yq.aliyun.com/u/lizhenliang

QQ群:323779636(Shell/Python运维开发群)

阅读全文

转载于:https://my.oschina.net/u/3715907/blog/1581529

第二章 字符串处理与编码不再发愁相关推荐

  1. SQL Server(第二章) 字符串函数、日期时间函数、转换函数

    --1.CONCAT 函数:字符串连接(支持sql server2012 SQL规则 如果与NULL连接返回NILL) SELECT empid,CONCAT(firstname,lastname) ...

  2. python去掉字符串最外侧的引号_疯狂Python讲义第二章读书笔记

    本章讲解变量和简单类型 2.1 从注释讲起 单行注释使用#,#后面的代码被注释掉不会运行,如: # print(123) 注释掉后123不会输出.多行注释使用"""  & ...

  3. 第二章 数据的表示和运算 2.1.3 字符与字符串 [计算机组成原理笔记]

    第二章 数据的表示和运算 2.1.3 字符与字符串 本笔记参考书目: 计算机组成原理(第六版.立体化教材)白中英.戴志涛 2021王道计算机组成原理视频公开课 本节重点: ASCII码/汉字编码 字符 ...

  4. 数字图像处理:第二十二章 基于模型的编码

    第二十二章基于模型的编码 目录 引言 基于对象的编码 基于模型的编码 作业 1. 引言 为了获得更高的压缩效率并保持一定的视频质量以支持超低码率(大约10kbps)双向视频应用,不考虑内容特点的仅仅针 ...

  5. 程序员编程艺术:第二章、字符串是否包含问题

    程序员编程艺术:第二章.字符串是否包含及相关问题扩展 作者:July,yansha. 时间:二零一一年四月二十三日. 致谢:老梦,nossiac,Hession,Oliver,luuillu,雨翔,啊 ...

  6. 《时光不再,你还在》凌莫寒白静熙第二章 这么开心的时刻,他只想和我庆祝...

    关注威·芯·工·众·号:二哈文学,回复:时光不再,你还在 或者书号:776 即可阅读全文 <时光不再,你还在>小说介绍 <时光不再,你还在>是一部情节跌宕起伏.扣人心弦,情节与 ...

  7. Java黑皮书课后题第4章:4.22(检测子串)编写一个程序,提示用户输入两个字符串,检测第二个字符串是否是第一个字符串的子串

    4.22(检测子串)编写一个程序,提示用户输入两个字符串,检测第二个字符串是否是第一个字符串的子串 题目 题目概述 运行示例 破题:String方法.属性的使用 代码 题目 题目概述 4.22(检测子 ...

  8. python字符串逆向垂直输出型烟雾机_第二章 灯光基础知识

    第二章灯光基础知识 舞台灯光简介 舞台灯光是演出空间构成的重要组成部分.是根据情节的发展对人物以及所需的特定场景进行全方位的视觉环境的灯光设计,并有目的将设计意图以视觉形象的方式再现给观众的艺术创作. ...

  9. 计算机组成原理ppt免费,计算机组成原理(白中英)第二章1.ppt

    计算机组成原理(白中英)第二章1.ppt (8页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 15.9 积分 第二章  运算方法和运算器 2.1 数据与文 ...

  10. windows核心编程-第二章 Unicode

    第2章U n i c o d e 随着M i c r o s o f t公司的Wi n d o w s操作系统在全世界日益广泛的流行,对于软件开发人员来说,将目标瞄准国际上的各个不同市场,已经成为一个 ...

最新文章

  1. Vue开发入门看这篇文章就够了
  2. linux c 编译警告 warning: this decimal constant is unsigned only in ISO C90
  3. 解决swiper在tab切换时,swiper不生效,以及display:none后,无法自动滑动的问题
  4. 按某列获取几行_机器学习获取数据难?别忘记特征工程
  5. cpu核心数的线程数
  6. 大摩维持浩大游戏“增持”评级
  7. lin-cms-dotnetcore功能模块的设计
  8. Spring MVC 4快速入门Maven原型得到了改进–更多Java 8功能
  9. JavaScript中的属性操作
  10. 考英语四级误用六级题 千余考生困教室4个小时
  11. 【Qt教程】2.6 - Qt5 自定义控件封装
  12. C#之DateTime
  13. IEEE VIS 2018专题
  14. masm32快速编辑器菜单翻译整理
  15. 2022腾讯云学生服务器价格申请认证及购买攻略!
  16. 【转自人人】本科生如何发表论文
  17. Android实践:基于聚合数据的手机号码归属地查询
  18. 轻量易用的网站bug与性能监控平台——灵雀应用监控平台
  19. HTML5期末大作业:动漫网站设计——灌篮高手(4页)HTML+CSS 学生DW网页设计作业成品 web课程设计网页规划与设计 计算机毕设网页设计源码...
  20. week2__javaSE__选择控制语句__循环控制语句__数组__面向对象之封装

热门文章

  1. PKU 2528 POJ 2528 Mayor's posters ( 线段树+离散化 ) ACM 2528 IN PKU
  2. 一个存储过程,折腾了我半天
  3. 《剑指offer》面试题31——连续子数组的最大和
  4. dataframe 绘图——按照每列出一个图(df.plot)
  5. 不透水面提取操作实现
  6. 空间统计分析之距离-思维导图(1)
  7. hibernate一对多双向关联中怎么配置list
  8. 回顾 | Apache Flink Meetup · 深圳站精彩回顾(附PPT下载)
  9. android自定义View之自定义可置顶ScrollView,View滑动原理简析
  10. android动画之属性动画学习