一、python数值类型
- int 整型
- long 长整型
- float 浮点型
- bool(True ,False) 布尔型
- complex 复数型
二、字符串
字符串创建
在python中表示字符串有3种方式,分别为单引号、双引号、三引号。
其中单引号和双引号的作用一样:
In [8]: s = "hello"
In [9]: type(s)
Out[9]: str
In [10]: s = "world"
In [11]: type(s)
Out[11]: str
- 三引号中的内容可以输入单引号、双引号或者换行符等符号:
In [14]: a = """ hello "world" """
In [15]: print a
hello "world"
In [16]: a = """ hello \n "world" """ #这里的换行符当作换行处理
In [17]: print a
hello
"world"
- 双引号中如果有引号,必须加转义符号,否则系统会报错:
In [19]: a ="\"hello world\""
In [20]: print a
"hello world"
三、python变量
- 变量是内存中的一块区域。
- 变量的命名: 变量名由字母,数字,下划线组成,必须以字母或下划线开头,其他字符可以由字母、数字或下划线(即数字不能出现在开头),也不可以有关键字
四、python运算符
- 算术运算符:+, -, ,*(幂次方,2**3=8), /, %(取余), //(取整)
- 赋值运算符:=, +=, -=, /=, %= (a+=3 a=a+3)
- 关系运算符:>, <, >=, <=, ==, != (最终返回结果是bool类型)
- 逻辑运算符:and(与), or(或), not(非)
五、详解字符串特性
- 索引
字符串中每一个字符都有一个下标,如果字符串的长度为n,则它的索引分别为0、1、2…….n-1
In [21]: s = "hello world"
In [22]: s[0] #正向索引第一个字符
Out[22]: 'h'
In [23]: s[-1] #反向索引从-1开始
Out[23]: 'd'
- 切片
s[start:stop:step]
start的默认值为0(即从字符串第一个字符开始),stop的默认值为字符串的长度本身(即截止到字符串最后一个索引值加上1),step为步长。
In [26]: s = "hello world"
In [27]: print s[::1] #从索引为0到索引为10,步长为1
hello world
In [28]: print s[::2] #从索引为0到索引为10,步长为2
hlowrd
In [29]: print s[1:5] #从索引为1到索引为4,步长为1
ello
**通过切片逆序输出字符串**
In [26]: s = "hello world"
In [30]: print s[::-1]
dlrow olleh
- 连接(将两个字符串连接成一个字符串,用”+”连接 )
In [36]: s = "hello"
In [37]: s1 = "world"
In [38]: print s+s1
helloworld
- 字符串的重复:用”*”重复字符串 内容
In [39]: s = "hello"
In [40]: print s*2
hellohello
- 成员操作符(in、not in)
In [42]: s = "hello"
In [43]: "h" in s
Out[43]: True #返回值只能是布尔型
In [44]: "h" not in s
Out[44]: False
- 字符串的一些方法
在Python中字符串有许多内置方法便于我们对字符串进行操作,如下:
输入字符串名称加“.”,按tab键可以查看字符串的内置方法
可以使用help(字符串名.方法名)查看该方法使用详解,如下
In [45]: help(s.find)
此处介绍比较常用的一些方法
1.判断字符串由什么组成
s.isalnum() ##判断字符串是否由字母和数字组成,返回一个布尔值
s.isalpha() ##判断字符串是否由纯字母组成,返回一个布尔值
s.isdigit() ##判断字符串是否由纯数字组成,返回一个布尔值
2.判断以什么开头,以什么结尾
In [48]: s = "hello"
In [49]: s.startswith("h") #是否以"h"开头,返回一个布尔值
Out[49]: True
In [50]: s.endswith("h")
Out[50]: False
3.去除字符串的空格以及左右的空格(主要应用在用户输入的地方)
s.strip() #去除空格
s.lstrip() #去除左空格
s.rstrip() #去除右空格
4.字符串对齐格式化,左对齐,右对齐,中间对齐
s.center(40,"*") #中心对齐用"*"补齐,共40个字符
s.ljust(10,"*") #左对齐用"*"补齐,共10个字符
s.rjust(10,"*") #右对齐用"*"补齐,共10个字符
5.按照指定分隔符分离字符串(默认分割符为空格)
In [59]: s = "hello world"
In [60]: print s.split(" ") #以空格分离该字符串
['hello', 'world']
6.通过指定分隔符连接信息
In [62]: s = "hello world"
In [63]: s1 = s.split(" ")
In [64]: print "*".join(s1) #用*连接分隔后的s1
hello*world
六、一些内置方法(BIF—build-in-function)
cmp(比较字符的ASCII码)
比较x、y的ASCII码,如果x小于y,返回一个负数,如果x等于y,返回一个0,如果x大于y,返回一个正数。In [67]: cmp("a","b") Out[67]: -1 In [68]: cmp("b","a") Out[68]: 1 In [69]: cmp("c","c") Out[69]: 0
len(统计字符串的长度(字符个数))
In [72]: s = "hello world" In [73]: print len(s) #空格也算在字符内 11
字符串的比较
字符串在比较时,计算机自动比较字符串首字符的ASC码值In [74]: a = "hello" In [75]: b = "world" In [76]: max(a,b) Out[76]: 'world' In [77]: min(a,b) Out[77]: 'hello'
枚举enumerate
返回字符串的下标即行号s = "hello" for index,value in enumerate(s): print index,value
结果如下:
上述代码利用内置方法enumerate(),以及循环语句将字符串的索引以及值循环显示出来,字符串是一种可以迭代的对象,可以用在循环中。replace()字符串中字符的更改
In [91]: s Out[91]: 'hello' In [92]: s.replace("e","-") #"e"是要替换的字符,用"-"替换 Out[92]: 'h-llo'
除法计算,同时返回商和余数
divmod(a,b) ##计算a/b,同时返回商和余数 In [97]: divmod(0.2,3) #当浮点数和一个整形数做除法,返回是浮点型 Out[97]: (0.0, 0.2)
四舍五入:round()
In [100]: round(1.5) Out[100]: 2.0 In [101]: round(1.4) Out[101]: 1.0
取数的绝对值,返回绝对值:abs()
In [102]: abs(-1) Out[102]: 1