python学习笔记(二)— 字符串(string)
字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。
创建字符串很简单,只要为变量分配一个值即可。例如:
var1 = 'Hello World!'
var2 = "xiaoming"
一、访问字符串中的值
var1 = 'Hello World!'
var2 = "xiaoming"
print(var1)
print ( var1[0])
print ( var2[1:5])
print( var1[:6] + var2)
返回:
Hello World!
H
iaom
Hello xiaoming
二、引号
python中定义变量的时候字符串都用用引号括起来,单引号和双引号没有区别,用啥都行,如果说这个字符串里面有单引号的话,那你外面就用双引号,里面有双引号的话,外面就用单引号,如果既有单又有双,那么用三引号,python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。
三引号也可以多行注释代码,单行注释,使用#
a = "I'm li." # 有单引号,所以外面用双引号
b= 'Python comments ues "li".' ##有双引号,所以外面用单引号
c = '''I'm li, i love "Python".''' # 有双引号和双引号,所以外面用三引号
'''d=print(a)
这一段是注释,说明三引号也有多行注释的功能
'''
print(a)
print(b)
print(c)
返回:
I'm li.
Python comments ues "li".
I'm li, i love "Python".
三、字符串格式化
Python 支持格式化字符串的输出,有三种方式,第一种是用“+”连接,直接把输出的字符串和变量连接起来就可以了;第二种是用占位符,占位符有常用的有三种,%s、%d和%f,%s是后面的值是一个字符串,%d是后面的值必须是一个整数,%f后面是小数;第三种是使用{}和fromat方法,这三种呢,官方推荐是使用format方法,不推荐使用第一种,第一种用加号的,会在内存里面开辟多个内存空间,而后面两种是只开辟一块内存空间
print ("我叫%s今年%d岁!" % ('小明', 10))
返回:
我叫小明今年10岁!
python字符串格式化符号:
四、字符串内置的方法
实例1:
name = 'my \t name is {name},age is {age}.'
print(name.capitalize())#大写
print(name.center(50,'-'))#50个-,把name放中间
print(name.endswith('u'))#是否以x结尾
print(name.expandtabs(10))#补\t的次数
print(name.find('n'))#查找字符串的索引,显示第一个的位置
print(name.format(name='niuniu',age=18))#这个是格式字符串
print(name.format_map({'name':'niuniu','age':19}))#这个也是格式化字符串,后面跟的是一个字典
返回:
My name is {name},age is {age}.
--------my name is {name},age is {age}.---------
False
my name is {name},age is {age}.
5
my name is niuniu,age is 18.
my name is niuniu,age is 19.
实例2:
print(''.isdigit())#是否是数字
print('aa'.isidentifier())#是否是一个合法的变量名
print('aa'.islower())#是否是小写字母
print('AA'.isupper())#是否是大写字母
print('Loadrunner Book'.istitle())#是不是一个标题,判断首字母是否大写
print('+'.join(['hehe','haha','ee']))#拼接字符串
name = 'Lq'
print(name.lower())#变成小写
print(name.upper())#变成大写
print('abcd'.capitalize())#将字符串的第一个字符转换为大写
返回:
True
True
True
True
True
hehe+haha+ee
lq
LQ
Abcd
实例3:
print('\n 空 格 \n'.lstrip())#默认去掉左边的空格和换行
print('\n 空 格 \n'.rstrip())#默认去掉右边的空格和换行
print('\n 空 格 \n'.strip())#默认去掉两边边的空格和换行
返回:
空 格 空 格
空 格
实例4:
str.maketrans('abcdefg','')#前面的字符串和后面的字符串做映射
print('cc ae gg'.translate(p))#输出按照上面maketrans做映射后的字符串
返回:
33 15 77
实例5:
print('mysql is db.'.replace('mysql','oracle',1))#替换字符串
print('mysql is is db'.rfind('is'))#返回最右边字符的下标
print('1+2+3+4'.split('+'))#切割字符串,返回一个list
print('1+2+3\n1+2+3+4'.splitlines())#按照换行符分割
print('Abcdef'.swapcase())#大小写反转
返回:
oracle is db.
9
['', '', '', '']
['1+2+3', '1+2+3+4']
aBCDEF
实例六:
name = 'besttest'
print(name.count('t'))#查找某个字符串在字符串里面出现的次数
print(name.find('d'))#找到这个字符串,返回它的下标,如果不存在的话,返回-1
print(name.index('t')) #找到这个字符串,返回它的下标,如果不存在的话,报错
file_name = 'a.xls'
print(file_name.endswith('.xls'))#判断一个字符串是否以xx结尾
sql = 'select * from user; select'
print(sql.startswith('select'))#判断一个字符串是否以xx开头
返回:
3
-1
3
True
True
python学习笔记(二)— 字符串(string)的更多相关文章
- python学习笔记(二)-字符串方法
python的字符串内建函数: #====================常用方法=============================name = 'besttest' new_name = n ...
- python学习笔记(二)、字符串操作
该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...
- Python 学习笔记二
笔记二 :print 以及基本文件操作 笔记一已取消置顶链接地址 http://www.cnblogs.com/dzzy/p/5140899.html 暑假只是快速过了一遍python ,现在起开始仔 ...
- Python学习笔记(二)
标识符和关键字 1,邮箱的Python标识符是任意长度的非空字符序列(引导字符+后续字符.) python标识符必须符合两条规则--标识符区分大小写 (1)只要是unicode编码字母都可以充当引导字 ...
- (10.1)Python学习笔记二
1.在项目工程中要模块化测试一个开发的功能,在测试通过后交付给项目组其他人员继续开发.要保证代码开发的性能和效率以及可扩展性. 2.项目工程中的文件夹分类要功能模块明确清晰,在python中引入某一个 ...
- Python学习笔记二
---恢复内容开始--- 一. python几种数据类型的比较. 从以下几个方面比较: 1. 是否可变. 不可变类型:变量的值可以发生变化,id也变了,相当于创建了一个新的对象,所以一修改值,id就变 ...
- Python学习笔记之字符串
一.字符串格式化 >>> format="Hello,%s. %s enough for ya?" >>> values=('World','H ...
- Python学习笔记3—字符串
原始字符串 使用\转义或者r,这种方法在网站设置网站目录结构的时候非常管用. >>> dos="c:\news" >>> print dos c ...
- 【Python学习笔记】字符串操作
字符串的表示 python中的字符串是一个常量,可以使用单引号'',双引号""或三引号""" """来创建一个字符串常量 ...
- ES6学习笔记(二)——字符串扩展
相信很多人也和我一样,不喜欢这样循规蹈矩的逐条去学习语法,很枯燥乏味.主要是这样学完一遍之后,没过一段时间就忘到九霄云外了.不如实际用到的时候研究它记得牢靠,所以我就整理成笔记,加深记忆的同时便于复习 ...
随机推荐
- vue 和ng的区别
vue: 读音: v-u-e view vue到底是什么? 一个mvvm框架(库).和angular类似 比较容易上手.小巧 mvc: ...
- 用Zend OPCache提高PHP的性能
Zend OPCache的前身是Zend Optimizer + (Zend O+),在PHP5.5的发行版本中自带了Zend O+,并重新命名为:Zend OPCache.但是默认是没有启用的,可以 ...
- android 百度地图开发实例(转载)
因为在我的寝室google基站定位返回的数据总是为空,所以换成百度地图,发现百度地图开发起来非常方便,提供了许多有用的工具,地图的加载速度也比google地图快许多. 为了加强记忆,写一点androi ...
- 利用CSS生成精美细线Table表格
精美的表格是前端开发用到的一个组件,很多时候我们利用复杂的页面style代码,来生成这样的表格,造成了页面的修改性和可读性都非常差.这里推荐直接使用css来产生一个细线表格. 使用方法也很简单: 第一 ...
- C++ c++与C语言的区别(三目运算符,const修饰符)
//区别⑦:三目运算符(C++版本) #include<iostream> using namespace std; //三目运算符 C语言返回变量的值 C++语言是返回变量本身 void ...
- Hadoop源码分析之客户端向HDFS写数据
转自:http://www.tuicool.com/articles/neUrmu 在上一篇博文中分析了客户端从HDFS读取数据的过程,下面来看看客户端是怎么样向HDFS写数据的,下面的代码将本地文件 ...
- Web前端开发中的MCRV模式(转)
作者: izujian 来源: baiduux 摘要:针对前端开发中基于ajax的复杂页面开发所面临的代码规模大,难以组织和维护,代码复用性.扩展性和适应性差等问题,本文尝试以MVC思想为 基础,结 ...
- Java设计模式菜鸟系列(十)模板方法模式建模与实现
转载请注明出处:http://blog.csdn.net/lhy_ycu/article/details/39806973 模板方法模式(Template Method):在一个方法中定义了一个算法的 ...
- Java Print 打印
Java 原生的API中有Print,使用Print可以操作打印机进行打印操作,获取打印机属性,下面是代码 打印程序(静默打印) package com.boci.PrintPDF; import j ...
- Angular 组件与模板 - 属性指令
指令概览 在 Angular 中有三种类型的指令: 组件 — 拥有模板的指令 结构型指令 — 通过添加和移除 DOM 元素改变 DOM 布局的指令 属性型指令 — 改变元素.组件或其它指令的外观和行为 ...