# 5.1 字符串的拼接
str1 = '我今天一共走了'
num = 1280
str2 = '步'
print(str1+str(num)+str2) # 计算字符串长度
print(len(str1)) # 5.2 字符串截取
str3 = 'abcdefgh'
substr1 = str3[2]
substr2 = str3[1:3]
substr3 = str3[:3]
substr3 = str3[1:]
print(substr1+'\n'+substr2+'\n'+substr3) # 5.3 分割字符串
str4 = '小 菜 鸡 要 加 油'
list4 = str4.split(' ')
print('原字符串:' + str4)
print('分割字符串:' + str(list4)) # 5.4 合并字符串
list5 = ['马云','扎克伯格','马化腾']
str_friend = ' @'.join(list5)
strnew = '@'+str_friend
print('你要@的好友:',strnew) # 5.5 检索字符串
str6_1 = '@小菜鸡 @小菜鸟'
print(str6_1.count('@')) #指定字符串在另一个字符串出现的次数
print(str6_1.find('@')) #返回子字符串首次出现位置,若不存在返回-1
print(str6_1.index('@')) #与find类似,若子字符串不存在则会抛出异常
print(str6_1.startswith('@')) #是否以子字符串开头
print(str6_1.endswith('@')) #是否以子字符串结尾 # 5.6 字母大小写转换
str7 = 'abCdEfG'
print(str7.upper()) #将小写字母转化为大写字母
print(str7.lower()) #将大写字母转化为小写字母
# 例题:不分大小写验证会员名是否唯一
username_1 = '|MingRi|mingrisoft|Bat|'
username_2 = username_1.lower()
regname_1 = input('请输入要注册的名字')
regname_2 = '|'+regname_1+'|'
if regname_2 in username_2:
print(regname_1,'已经被注册,请重新注册')
else:
print(regname_1+',恭喜您,注册成功') # 5.7 去除空格和特殊字符
str8_1 = ' @小菜鸡 @小菜鸟 '
print(str8_1.strip('@')) #srtip中可以设置多个字符,若不设置字符,默认去除左右的空格、制表符和回车、换行
print(str8_1.strip()) #去除左右的空格和特殊字符
print(str8_1.lstrip()) #去除左侧空格和特殊字符
print(str8_1.rstrip()) #去除右侧空格和特殊字符 # 5.8 格式化字符串
#使用%占位符
template = '编号:%09d 公司名称: %s 官网: http://www.%s.com'
context1 = (7,'百度','baidu')
context2 = (8,'微软','mingrisoft')
print(template%context1)
print(template%context2)
#使用format()方法
# str.format(args)
# {[index][:[[fill]align][sign][#][width][.precision][type]]}
# index 表示设置格式对象在参数列表中的索引位置
# fill 指定空白处的填充字符
# align 指定对齐方式 >表示右对齐;<表示左对齐;=表示内容右对齐,符号放在左侧且只对数字类型有效;^表示内容居中,配合width使用
# sign 指定有无符号数
# #对于二进制、八进制、十六进制会显示前缀
# width 指定所占宽度
# .precision 指定保留小数位数
# type指定类型 template = '编号:{:0>9} 公司名称:{:s} 官网: http://www.{:s}.com'
context3 = template.format(7,'百度','baidu')
context4 = template.format(8,'微软','mingrisoft') print(context3,'context3')
print(context4,'context4') # 5.9 字符串编码转换
#encode()编码 将字符串转化为二进制
#str.encode([encoding = "utf-8"][,errors = "strict"])
verse = "小菜鸡要加油"
verse_change = verse.encode('GBK') #可选参数为gb2312(简体中文),默认utf-8
print('原字符:',verse)
print('转换字符:',verse_change) #decode()解码
#bytes.decode([encoding="utf-8"][,errors="strict"])
print("解码:",verse_change.decode("gb2312"))

Python学习笔记(九)——字符串的更多相关文章

  1. Python学习笔记九

    Python学习笔记之九 为什么要有操作系统 管理硬件,提供接口. 管理调度进程,并且将多个进程对硬件的竞争变得有序. 操作系统发展史 第一代计算机:真空管和穿孔卡片 没有操作系统,所有的程序设计直接 ...

  2. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  3. Python学习笔记3—字符串

    原始字符串 使用\转义或者r,这种方法在网站设置网站目录结构的时候非常管用. >>> dos="c:\news" >>> print dos c ...

  4. 【Python学习笔记】字符串操作

    字符串的表示 python中的字符串是一个常量,可以使用单引号'',双引号""或三引号""" """来创建一个字符串常量 ...

  5. python学习笔记(九)、模块

    1 模块 使用import 语句从外部导入模块信息,python提供了很大内置模块.当你导入模块时,你会发现其所在目录中,除源代码文件外,还新建了一个名为__pycache__的子目录(在较旧的Pyt ...

  6. Python学习笔记(3)-字符串

    创建字符串 一对单引号或双引号 >>> 'hello world' 'hello world' >>> "hello world" 'hello ...

  7. python学习笔记九——序列

    4.4 序列 序列是具有索引和切片能力的集合.元组.列表和字符串具有通过索引访问某个具体的值,或通过切片返回一段切片的能力,因此元组.列表和字符串都属于序列.序列索引功能演示: tuple=(&quo ...

  8. Python学习笔记九:装饰器,生成器,迭代器

    装饰器 本质是函数,装饰其他函数,为其他函数添加附加功能 原则: 1不修改原函数的源代码 2不修改原函数的调用方式 知识储备: 1函数即变量 使用门牌号的例子说明函数,调用方式与变量一致 2高阶函数 ...

  9. Python学习笔记:字符串

    字符串 字符串定义:字符串可以使用一对单引号.双引号或三引号来定义,即便是单个字符也会当做字符串来处理(Python中没有字符类型,单个字符也就是只有一个字符的字符串而已). 原始字符串:字符串中反斜 ...

  10. python学习笔记(一)---字符串与列表

    字符串的一些处理 字符串的大小写 name="lonmar hb" print(name.upper())#全大写 print(name.lower())#全小写 print(na ...

随机推荐

  1. Windows IIS7 下安装配置 PHP7.0

    确认Microsoft Visual C++版本 Microsoft Visual C++的版本至关重要,根据Microsoft Visual C++版本下载的PHP不同.        PHP官网的 ...

  2. android 串口 android-serialport-api

    最近在做Android串口的开发,找到一个开源的串口类android-serialport-api.其主页在这里http://code.google.com/p/android-serialport- ...

  3. dubbo-源码阅读之服务订阅

    配置例子 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://w ...

  4. 【学术篇】SPOJ GEN Text Generator AC自动机+矩阵快速幂

    还有5天省选才开始点字符串这棵技能树是不是太晚了点... ~题目の传送门~ AC自动机不想讲了QAQ.其实很久以前是学过然后打过板子的, 但也仅限于打过板子了~ 之前莫名其妙学了一个指针版的但是好像不 ...

  5. C++32位和64位常见类型的大小

             32位      64位 char      1       1 int                       4      大多数4,少数8 long      4      ...

  6. Jenkins使用admin修改安全矩阵的时候报错“admin没有Overall/Read权限”

    1.注册完Jenkins,然后使用admin用户登录,报错“admin没有Overall/Read权限”: 2.因为我自己的Jenkins是放在tomcat/webapps的目录下的,所以Jenkin ...

  7. java统计一个子串在指定字符串中出现的次数

    今天查着用了用String类里的几个方法,分享下代码 题目要求:统计一个子串在指定字符串中出现的次数( 提示java字串出现了6次) public class SearchSameString { p ...

  8. hbase-2.0.4集群部署

    hbase-2.0.4集群部署 1. 集群节点规划: rzx1 HMaster,HRegionServer rzx2 HRegionServer rzx3 HRegionServer 前提:搭建好ha ...

  9. (转)MySQL安装及配置指南

    转:http://wiki.ubuntu.org.cn/MySQL%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97 安装MySQL sudo apt-get install m ...

  10. php开发面试题---1、php常用面试题一(PHP有哪些特性)

    php开发面试题---1.php常用面试题一(PHP有哪些特性) 一.总结 一句话总结: ①.混合语法:php独特混合了C,Java,Prel以及PHP自创的语法. ②.为动态网页而生:可以比CGI或 ...