一:学习内容

  • 字符串类型
  • 字符串类型判断
  • 字符串类型互转
  • 字符串小练习

二:字符串类型

1. basestring

在python中和字符串相关的数据类型为:str和unicode,他们都是basestring的子类,可见str和unicode是两种不同类型的字符串对象

2. 字节字符串类型

byteString='hello world!'

可以看到这个byteString的类型为str

3. unicode字符串类型(在普通字符串前面加个u)

unicodeString=u'hello Unicode world!'

可以看到这个unicodeString的类型为unicode

三:字符串类型判断

1. 判断是否是字符串(包括str和unicode)

#encoding=utf-8

s = "hello normal string"

u = u'hello unicode'

if isinstance(s,basestring):

print u'是字符串'

if isinstance(u,basestring):

print u'是字符串'

运行结果为:无论是str字符串还是unicode字符串都属于basestring类中子类

2. 判断是否是unicode

#encoding=utf-8

s = "hello normal string"

u = u'hello unicode'

if isinstance(s,unicode):

print s,u'是unicode'

if isinstance(u,unicode):

print u,u'是unicode'

运行结果为:

3. 判断是否是str

#encoding=utf-8

s = "hello normal string"

u = u'hello unicode'

if isinstance(s,str):

print s,u'是str'

if isinstance(u,str):

print u,u'是str'

运行结果为:

四:字符串类型互转

1. 不指定编码解码类型进行互转-使用系统默认编码

#encoding=utf-8

s="byte string"

print type(s)

#str 转 unicode

u = s.decode()

print type(u)

#uncode 转 str

backToBytes = u.encode()

print type(backToBytes)

可以看到上面的unicode和decode都没有指定编码解码的名称,此时会用系统默认的编码。

2. 指定编码解码类型进行互转

#encoding=utf-8

s = "hello normal string"

print u"字节字符串",type(s)

#str 转 unicode

u = s.decode("UTF-8" )

print u"Unicode字符串",type(u)

#uncode 转 str

backToBytes = u.encode( "UTF-8" )

print u"字节字符串",type(backToBytes)

运行结果为:

五:字符串小练习

1. 小练习一:输出字符串中奇数坐标的字符串

a = 'gloryroad'

''.join([a[x] for x in xrange(len(a)) if x%2==1])

2. 小练习二:将字符串大写变小写,小写变大写输出

s='adbABC'

s.swapcase()

3. 小练习三:将字符串abcdefgccc顺序第一个c变成f然后输出整个字符串

s1='abcdefgccc'

s2=''

flag=True

for i in s1:

if i=='c' and flag:

s2+='f'

flag=False

else:

s2+=i

print s2

运行结果为:

4. 小练习四:输出1000以内包含3的数如:34,153等

print [x for x in range(1001) if '3' in str(x)]

上面的练习也许各位初学者不能全部都看懂,别急,后续的python学习笔记中我们会就每一个细节进行一一学习。

笔记五:python字符串的更多相关文章

  1. python学习笔记:python字符串

    二.python字符串操作符 1. 对象标准类型操作符 Python对象的标准类型操作符一共就三种:对象值的比较.对象身份的比较.布尔类型.其中对象值的比较主要是大于.小于.不等于等的数学比较符:对象 ...

  2. Python学习笔记五:字符串常用操作,字典,三级菜单实例

    字符串常用操作 7月19日,7月20日 ,7月22日,7月29日,8月29日,2月29日 首字母大写:a_str.capitalize() 统计字符串个数:a_str.count(“x”) 输出字符, ...

  3. Python学习笔记(五)Python的切片和迭代

    切片 Python提供了切片操作符,可以对list.tuple.字符串进行截取操作. list中的切片应用 语法如下: >>> L = ['Michael', 'Sarah', 'T ...

  4. 笔记:Python 字符串小记

    1. 字符串是以''或""括起来的任意文本,如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK" >>> p ...

  5. 【python学习笔记】3.字符串使用

    [python学习笔记]3.字符串使用 字符串是一种序列,素有标准的序列操作对字符串用样适用,字符串是不可以改变 格式化操作符,%,左侧是格式化字符串,右侧是被格式的值,可以是一个值.元组.字典 数值 ...

  6. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  7. python之路《五》字符串的操作

    python的里的字符串的操作是可以说是最常见也是最实用的 我们通常使用双引号来表示字符串" "创建字符串很简单,定义一个变量就可以了 1 name = 'my name \t i ...

  8. python学习笔记3(字符串)

    Python字符串: 在Python中的字符串被确定为一组连续的字符在引号之间, Python允许在任何对单引号或双引号. 串的子集,可以使用切片操作符可采用([]和[:]),索引从0开始的字符串的开 ...

  9. [Python学习笔记][第四章Python字符串]

    2016/1/28学习内容 第四章 Python字符串与正则表达式之字符串 编码规则 UTF-8 以1个字节表示英语字符(兼容ASCII),以3个字节表示中文及其他语言,UTF-8对全世界所有国家需要 ...

随机推荐

  1. EBS trace分析

    下载Trace Analyzer,打开bin下的traceanalyzer.bat 即可分析EBS的trace文件,图形化界面,无需tkprof 需要配置javahome,确认java版本为1.6以上 ...

  2. EBS 11i升级R12

     http://blog.csdn.net/y657356105/article/details/8181081 概述 从EBS 11i升级至R12,总的来说更变较大的就是多OU访问(MOAC)和表视 ...

  3. (原创)PetaPoco使用小记(2014-5-5更新)

    接触PetaPoco已经有一段时间了,为了全面了解一下PetaPoco,刚好结合目前在做的一个项目,对常用的几个业务操作用PetaPoco进行改写,如增删改查.分页以及存储过程的调用,在文章的最后附上 ...

  4. Team Foundation Server (TFS)与Project Server集成,使用DNS(友好地址)地址注册PWA

    问题描述: 当Team Foundation Server(TFS 2010/2012/2013)与Project Server高可用性的环境集成时,必然会使用Project Server (PWA) ...

  5. 基于jTopo的拓扑图设计工具库ujtopo

    绘制拓扑图有很多开源的工具,知乎上也有人回答了这个问题: https://www.zhihu.com/question/41026400/answer/118726253 ujtopo是基于jTopo ...

  6. WPF Item拖拽 DragDrop

    今天有个需求是需要拖拽DataGrid中的item到另一个DataGrid.自己实现还比较繁琐,网上查了查,发现一个不错的开源项目 gong-wpf-dragdrop nuget安装下:Install ...

  7. 第二章 ConcurrentHashMap源码解析

    注:在看这篇文章之前,如果对HashMap的层不清楚的话,建议先去看看HashMap源码解析. http://www.cnblogs.com/java-zhao/p/5106189.html 1.对于 ...

  8. NGINX部署配置参考.

    请求动态页面 1. uwsgi.ini配置文件.(主从负载uwsgi1.) 2. uwsgi2 的配置文件 3.查看. 4.结构图 5.配置 NGINX服务器  定义上游有哪些服务器. 定义转交给up ...

  9. Django 一些少用却很实用的orm查询方法

    一.使用Q对象进行限制条件之间 "或" 连接查询 from django.db.models import Q from django.contrib.auth.models im ...

  10. Mutual Training for Wannafly Union #6 E - Summer Trip(并查集)

    题目链接:http://www.spoj.com/problems/IAPCR2F/en/ 题目大意: 给m个数字代表的大小,之后n组数据,两两关联,关联后的所有数字为一组,从小到大输出组数以及对应的 ...