python学习笔记21:基础之常量(数、str)、变量

1. 常量.数

数本身不可改变,包括:

  1. 整数,int(比如2),Python3中没有Long类型,python3 int没限制大小,可以当作Long使用;
  2. 浮点数,float(小数3.23、幂记法的数52.3E-4);
  3. 复数,complex(比如-5+4j,complex(a, b));

2. 常量.字符串

2.1. python字符串的一些特点:

  1. 字符串不可变;
  2. 可使用单引号(原样保留字符串内的字符)、双引号、三引号(可以指示一个多行的字符串,可以是’’’或“““)创建;
  3. 行尾的\表示续行,在代码中看起来是两行,实际等价于一行内容;
  4. 自然字符串:加上r或R前缀,表示不需要转义处理,如r'new lines are indicated by \n';(类似于perl中的单引号,不转义)
  5. Unicode字符串:加上u或U前缀,表示非英文的字符串,如u'a Unicode string';这是书写国际文本的标准方法。
  6. 字符串级连:相邻放置即可,如'What's' ' your name'会被转为'What's your name',注意在your前自己加一个空格,注意your空格之前是两个单引号,不是一个双引号;
  7. 使用正则表达式时,最好使用自然字符串,否则会增加很多\。比如r'\1',如果使用普通字符串,要写为'\1';

2.2 常用函数:strip()

s.strip(‘x‘) # 删除s开头、结尾处的指定字符,默认删除空白符(\n, \r, \t, ‘ ‘)
s.lstrip(‘x’) # 类似于strip(),不同是只删除开头处的指定字符。
s.rstrip(‘x’) # 类似于strip(),不同是只删除结尾处的指定字符。

注意:如果指定多个字符,它删除的并不是这个序列,而是把多个字符拆开一个个去除:
‘abcde’.strip(‘cake’) # 返回bcd,它去掉’abcde’首尾的所有‘c’、‘a’、‘k’、‘e’。
’30.01%’.strip(‘.01%’) # 返回3,它去掉首尾的‘.’、‘0’、‘1’、‘%’, 而不是去掉‘0.1%’返回30。

所以使用strip时,尽量不要指定多个字符。

2.3. 常用函数:count(sub[, start[, end]])

作用:返回sub在string里出现的次数。如果指定了start或end,则返回指定范围内出现的次数。
参数:

  1. sub:搜索的子字符串;
  2. start:字符串起始搜索的位置,默认为0;
  3. end:字符串结束搜索的位置,默认为len(sting),开集,不包括这个idx;

实例:

>>> s = ‘1abc2abc3abc’  
>>> s.count(‘abc’) # ‘abc’共出现了3次;  
3  
>>> s.count(‘abc’, 0, 3) # end=3不包括idx=3的字符,所以返回0;  
0  
>>> s.count(‘abc’, start=0) # 不能使用关键字参数;  
TypeError: count() takes no keyword arguments  

2.4. 常用函数:find(sub[, start[, end]]), 另见rfind()

作用:检测字符串是否包含子串str;

返回值:

  1. string包含sub时,返回索引值(find从左边找,rfind从右边找)
  2. string不包含sub时,返回-1;

参数:

  1. sub,子串;
  2. start,起始位置,默认为0;
  3. end,结束位置,默认为len(string);

实例:

>>> s0 = ‘This isa string’  
>>> s1 = ‘is’  
>>> s0.find (s1) # 2,返回s1在s0中的起始idx。  
2  
>>> s0.find (s1.upper()) # s0中不包含’IS’,返回-1  
-1  
>>> s0.find(s1, 2) # 从idx==2开始找,包括idx==2  

2.5 大小写转换 str.uppper(), str.lower(), str.swapcase()

将字母转为大写/小写

>>> s0 = 'abcDEF'
>>> s1 = s0.upper()
>>> s1
'ABCDEF'
>>> s2 = s0.lower()
>>> s2
'abcdef'
>>> s3 = s0.swapcase()
>>> s3
'ABCdef'

3. 变量

  1. 变量名不能以数字开头、变量名大小写敏感;
  2. 数据类型:基本的数据类型是数、字符串,(还可以使用类创建自己的类型);
  3. python把程序中用到的任何东西(数、字符串、函数等)都称为对象。
  4. 注意,与C不同,Python不需要声名,不需要定义数据类型,Python会自己判断其类型;
  5. 注意,与Perl也不同,Python不能自动转换数据类型;
  6. 数据类型转换:
转换函数 说明
int(x) 返回x对应的整数
float(x) 返回x对应的浮点数
complex(x) 返回x对应的复数,实部为x,虚部为0
complex(x, y) 返回x对应的复数,实部为x,虚部为y

例:

>>> int('123')  
123
>>> int(12.34)  
12  
>>> float('12.34')  
12.34  
>>> str(1.23)  
'1.23'  
>>> str(100)   
'100'  
>>> bool(1)  
True  
>>> bool(0)  
False  
>>> bool('')  
False  
>>> bool('0') #非空str为真  
True  
posted @ 2020-07-06 14:29  编程驴子  阅读(494)  评论(0编辑  收藏  举报