【python学习-3】python数据类型

1、数字

  在python 2.x中,数字类型有4种,int、long、float 和 complex(复数);而python 3 中,只有 int、float 和 complex 3种,python 3 种的int相当于 python 2 中的long。

  运算符:

**  乘方运算符
//  整除运算符
%   取余
+   加
-   减
*   /   |   位或
^   位异或
&   位与
<<  左移运算
>>  右移运算

2、字符串

  常见转移符

\n    换行符
\t    制表符
\r    回车符
\\    表示\
\'    表示单引号
\"    表示双引号

  字符串操作实例:

#!/usr/bin/python
mystr = 'hi,pyth on,please!';
print(mystr);
print(mystr.capitalize()); # 首字母大写
print(mystr.count('p')); # 获取字符串中“p”的个数
print(mystr.find('p')); # 查找字符串中“p”的位置
print(mystr.isalpha()); # 检查是否仅包含字母
print(mystr.isdigit()); # 检查字符串是否仅包含数字
print(mystr.islower()); # 检查字符串是否全小写
print(mystr.isupper()); # 检查字符串是否全大写
print(mystr.istitle()); # 检查字符串中单词是否首字母大写
print(mystr+'abc'); # 连接字符串
print(mystr.title()); # 字符串中单词首字母大写
print(mystr.upper()); # 字符串全大写
print(mystr.lower    ()); # 字符串全小写
print(mystr*3); # 字符串重复3次
print(mystr.split(',')) # 分割字符串
print(mystr); # 以上操作只是返回新的字符串,但是原字符串始终不变

print(mystr[3]); # 访问字符串中第3个位置的字符
print(mystr[-2]); # 访问字符串中倒数第2个字符
print(mystr[3:10]); # 获取第3——10之间的字母(不包括第10)

print( '10' + str(4) ); # 将数字转为字符
print(int('10')+4); # 将字符转为数字

mypath = r'e:\table'; # 以字母R或者r开头的字符串,为原始字符串,字符“\”不再表示转义符号
print(mypath);

import os;

print( os.listdir(mypath) ); # 列出目录中内容

3、列表

  列表是以“[]”包围的数据集合

#!/usr/bin/python
list = []; # 定义一个空列表
list.append(1); # 追加成员
list.extend([2,3,5,3,6]); # 添加一个列表
print(list);
print(list.index(3)); # 查看3再列表中的位置
list.insert(2,'8'); # 在位置2插入成员
print(list);
list.pop(2); # 将位置3的元素删除
print(list);
list.remove(3); # 删除列表中的元素3
print(list);
list.reverse(); # 列表倒序
print(list);
list.sort(); # 列表排序
print(list);

4、元组

  元组与列表相似,但是元组是使用圆括号“()”包围的数据集合。

  元组内容不能被修改,只能使用分片和索引操作

#!/usr/bin/python
list = [2,3,5,1,6]; # 定义一个列表
cuple = ('hello','world','0.0','2b'); # 定义一个元组
print(list);
list.insert(2,cuple); # 在位置2插入成员
print(list);
print(cuple[1]);
print(cuple[1:-1]); # 获取第2个元素到倒数第1个元素之间的部分,但是不包含最后1个元素

5、字典

  python中的字典相当于java中的Map,是以大括号“{}”包围的数据集合。

  字典是无序的,访问成员通过 key 来访问。

  字典与列表一样,是可变的。

#!/usr/bin/python
dic = {'ap':'xiaofa','ad':66,9:77}; # 定义一个字典
print(dic); 
dic2 = dic.copy() # 复制字典
print(dic2); 
print(id(dic));  # 查看内存中的id
print(id(dic2));  # 查看内存中的id

print(dic.get('ad'));    # 获取特定元素
print( 'ap' in dic );   # 查看 指定 key 是否存在
print(dic.items());  # 查看 (key,value) 组成的 列表
print(dic.keys());    # 查看 key 列表
print(dic.values());    # 查看 value 列表

print(dic.pop('ap'));    # 删除元素并返回被删除元素

dic['ad'] = 'adc';    # 更新指定元素的值
print(dic);

dic.update({'ad':'adad','rou':'蒙多'});    # 将另一个字典加入,原来字典如果重复的key,则会被覆盖
print(dic);

dic.clear(); # 清空字典
print(dic);

6、文件操作

#!/usr/bin/python

'''
open()将会返回一个file对象,基本语法:
open(filename,mode)
不同模式打开文件的列表:
r:以只读的方式打开文件,文件的指针将会放在文件的开头,为默认模式
rb:以二进制格式打开一个文件用于只读,文件指针会在文件的开头
r+:打开一个文件用于读写,文件指针将会在文件的开头
rb+:以二进制格式打开一个文件用于读写,文件指针会放在文件的开头
w:打开一个文件用于写入,如果该文件已存在则将会覆盖文件,如果不存在则创建新文件
wb:以二进制打开一个文件用于写入
w+:打开一个文件用于读写
wb+:以二进制格式打开一个文件用于读写,如果文件存在则覆盖,如果不存在则创建新文件
a:打开一个文件用于追加内容,如果文件已存在,文件指针会放在文件的结尾,如果不存在则创建新文件进行写入
ab:以二进制格式打开一个文件用于追加写入
a+:打开一个文件用于读写,如果该文件已存在,文件指针会放在结尾,文件打开时会是追加模式,该文件不存在则创建新文件
ab+:以二进制格式打开一个文件用于追加
'''
file = open('E:/table/a.txt','w');
file.write('python\n');
# file.writelines(['this is a test\n','88\n']): # 报错 SyntaxError: invalid syntax,why
file.write('this is a test\n');
file.close();

file = open('E:/table/a.txt','r');
s = file.read();
print(s);
'''
file.seek():改变当前文件指针的位置,file.seek(offset,from_what)
seek(x,0):从文件首行首字符开始移动x个字符
seek(x,1):从当前为往后移动x个字符
seek(-x,2):从文件的结尾往前移动x个字符
'''
file.seek(0);    # 移动到行首
s = file.readlines();
print(s);
file.close();

 

posted @ 2018-08-13 23:45  快乐菠菜  阅读(288)  评论(0编辑  收藏  举报