repr 会把引号也输出出来
而print 不输出引号
repr 会把引号也输出出来
而print 不输出引号
Python的类型与运算-字符串格式化表达式
s 字符串(或任何对象)
r 与s一样,但输出方式是repr方式,而不是str
c 字符
d 十进制(整数)
i 整数
u 无号整数
o 八进制整数
x 十六进制整数
X 与x同样,A-F是大写
e 浮点指数
E 与e同样,E是大写
f 浮点数十进制
F 浮点数十进制
g 浮点e或f
G 浮点E或F
repr会连引号都输出,和print不一样
"%u" % (-1)输出的还是有符号的
有%r时输出会带双引号
{'float':3.1}字典的形式,可以不管顺序
'my laptop platform is {p}'.format(p=sys.platform)
或者'my laptop platform is {p.platform}'.format(p=sys)
'this is a test {t[0]}'.format(t='hello不能用[1:]
'{:-^40}'.format('start') ^居中
'{:=10}'.format(1) =用于输出数字
字符串格式化表达式:
fieldtype使用属性或指针
当使用字典的时候需要引号扩充,但使用字符串格式化方法的时候不能使用引号
repr('a')==>"'a'"
'What do you like,{2},{1},{0}'.format('ham','spam','eggs')==>'What do you like,eggs,spam,ham'
'What do you like,{s},{e},{h}'.format(h='ham',s='spam',e='eggs')==>'What do you like,eggs,spam,ham'
'What do you like,{},{},{}'.format('ham','spam','eggs')==>'What do you like,ham,spam,eggs'
'%+10.2f' 123.123==>'123.12 '(+左对齐,-右对齐)
import sys sys.platform()显示系统平台 '{p.platform}'.format(p=sys)==== p.platform()
'{t[0]}'.format(t={'a','b','hello'})====> ' a'
'{:-^10}'.format('start') ^表示居中'start'其他的用'-'(只能有一个字符)来填充40表示有40个字符 <表示左对齐 >表示右对齐 =的时候'start'必须是数字 '{:=10}'.format(-1)==>'- 1' '{:=+10}'.format(1)==>'+ 1' '{:+10}'.format(10)==>' +1' '{: }'.format(10)==>' 10' '{: }'.format(-10)==>'-10'
#只有在数字显示里,显示0b 0o 0x时用 '{0:#8b},{0:#8o},{0:#8x}'.format(10) =================> ' 0b1010, 0o12, 0xa'
,是来表示数字时每三位加一个,
0是固定宽度下前面补0
====字符串
python中 内存分配取决于底层的编译器
查看内存占用字节数
len(变量)
组成新字符串
a='lao'
b='wang'
c=a+b #>>>c 'laowang'
d=100
e=200
f=d+e #>>>f 300
g='==='+a+b+'===' #>>>g '===laowang==='
h='===%s==='%(a+b) #>>>h '===laowang===' python3中字符串拼接可以使用引用的方式
==字符串下标
name = 'abcdef'
>>>name[2]
c
#字符串下标从0开始
IndexError:out of range下标越界
==取最后一个字母
name[len(name)-1]
name[-1]
==字符串切片
>>>name[2:5] #从2到5
'cde'
>>>name[2:-1] #从2到最后的前一位
'cde'
>>>name[2:] #从2到最后
'cdef'
==间隔一位,切片
>>>name[2:-1:2] #从2到最后的前一位,并且隔一位一取
'ce'
#name[起始位置:终止位置:步长]
默认步长为1
==逆序
>>>name[-1:0:-1]
fedcb
>>>name[-1::-1]
fedcba
>>>name[::-1]
fedcba
#起始点与截止点根据步长有关
==常见函数
myStr = "hello world itcast and itcastxxxcpp"
myStr.这时候按TAB会显示字符串的常见操作
>>>myStr.find('world')
6 #返回开头字母的下标
>>>myStr.find('dog')
-1 #找不到为-1
从左边开始找
>>>myStr.rfind('itcast')
23
==替换
>>>myStr.replace('world','WORLD')
hello WORLD itcast and itcastxxxcpp
>>>myStr
hello world itcast and itcastxxxcpp #字符串为不可变类型,仅返回新字符串,旧值不变
replace('','',num) #替换几个
==切割
>>>myStr.split()
myStr.split()#默认可以将空格与转义字符删掉并切割字符串,返回list
再使用.join拼接回字符串
==开头大写小写
myStr.capitalize() #小写
myStr.title() #大写
==判断以什么开头,以什么结尾
file_name = 'xxx.txt'
file_name.endswith('.txt')
file_name.startswith('wang')
#返回值为布尔型
==大小写转换(所有)
.lower
.upper
>>>
格式化表达式中的各个符号和C语言相似。例如%d表示整数,%s表示字符串。
format()方法:举例如下: