Python学习日记Day1:变量类型
Pythonpython 可用于系统编程、图形处理、数学处理、文本处理、数据库编程、网络编程、web编程、多媒体应用、PYMO游戏引擎。
python变量类型
Python的标准数据类型只有5个:数字、字符串、列表、元组、字典。
Python给变量赋值时不需要预先声名变量类型。
1.数字
python支持 三种不同的数值类型:
int类型(整数):python3中没有sys.maxint限制,理论上来说python3的int类型是无限大的。8进制和16进制数字都是属于int(Long)类型的。
float类型:浮点型实数,是数学中带小数点的数,不包括无限小数,不区分精度。
complex类型:复数包含一个有序对,表示为a+bj,其中,a是实部,b是复数的虚部。
2.字符串
字符串被定义为在引号(或双引号)之间的一组连续的字符。
字符串也可以看成一个不可修改的字符列表,所以大部分用来操作列表的方法(不涉及修改列表元素的)同样可以用来操作字符串。
典型的字符串操作如下:
(1)字符串大小写的转换
S.lower()::字母大写转换成小写。
S.upper():字母小写转换成大写
S.swapcase():字母大写转换成小写,小写转换成大写。
S.title():将首字母大写
(2)字符串的搜索、替换
S.find(substr,]):返回S中出现substr的第一个字母的标号,若无则返回-1,在start到end范围内搜索。
S.count(substr,]):计算substr在S中出现的次数
S.replace(oldstr,newstr,):把S中的oldstr替换为newstr,count为替换次数。
S.strip():把S左右两端chars中有的字符全部去掉,一般用于去除空格。
S.lstrip():把S左端chars中所有的字符全部去掉。
S.rstrip():把S右端chars中所有的字符全部去掉。
(3)字符串分割、组合
S.split(]):以sep为分隔符,把S分成一个List,maxsplit表示分割的次数,默认的分割符为空白字符。
S.join(seq):把seq代表的序列———字符串序列,用S连接起来,比如# $.
(4)字符串编码、解码
S.decode():将以encoding编码的S解码为 unicode编码。
S.encode():将以unicode编码的S编码成encoding,encoding可以是gb2312,gbk,big5.......
(5)字符串测试
S.isalpha():S是否全是字母,至少有一个字符。
S.isdigit():S是否全是数字,至少有一个字符。
S.isspace():S是否全是空白字符,至少有一个字符。
S.islower():S中的字母是否全是小写。
S.isupper():S中的字母是否全是大写。
S.istitle():S是否是首字母大写的。
3.列表
列表是Python最常用的变量类型,列表是一个可变序列,序列中每个元素都分配一个数字,即它的位置,或者叫索引。第一个索引是0,第二个索引是1,以此类推。列表中的元素可以是数字、字符串、列表、元组、字典......
[ ]用来表示列表, 将一个变量赋值为空列表,var=[ ] ;
访问列表只需要列表名和列表中元素的下标即可;
列表的基本操作:
创建列表 L=[] 、插入数据 L.insert(位置,元素)、追加数据 L.append()、访问数据 L[ 索引]、删除数据 L.pop( )
最常用的列表操作:列表分片,操作为 list] ,step为步长。比如L(0,:0:2)
4.元组
元组与列表相似,不同之处在于元组的元素是不可修改的,赋值后就无法修改,是不可变序列。
元组用()声明。
创建元组,只需要在括号中添加元素,并使用逗号隔开。
列表切片可以对元组使用,因为切片并不改变原始数据。
元组和列表可以相互抓换,用tuple(list)可以将列表转换成为元组,反过来用list(tuple)将元组转换成列表。
元组和列表的不同仅仅在于一个可修改,一个不可修改。
由于元组不可修改的特性,一般在函数中需要返回多个返回值时,可以将这些返回值放入一个元组中返回。
5.字典
字典声明使用 {} ,元素分隔符为 逗号。
字典中的键和列表中的索引一样是不可重复的,但键是无序的,字典中的元素没有顺序可言。
一般用字符串做键,键与键值用冒号分割,字典中通过键来访问键值。
由于字典的键值无序,所以插入一个数据,无须使用insert,直接定义即可。
修改字典同样是直接定义,删除元素使用del,可以理解为 取消分配给变量的内存空间。
del可以删除数字变量、字符串变量、列表、元组、字典等等。
字典的键和键值可以是任何类型,没有特殊要求的情况下,尽可能使用字符串作为键。
字典的常用操作:
dict.keys():返回一个包含字典所有key的列表
dict.values():返回一个包含字典所有value的列表。
dict.items():返回一个包含所有(键,值)元组的列表。
dict.clear():删除字典中所有的元素。
dict.get(key):返回字典中key所对应的值。
** #字符串的基本操作 **
def strCase():
"字符串大小写转换!"
print("演示字符串大小写转换:")
print("演示字符串S赋值为:'This is a PYTHON '")
S='This is a PYTHON '
print("大写转换成小写:\t S.lower() \t=%s" %(S.lower()))
print("小写抓换成大写:\t S.upper() \t=%s" %(S.upper()))
print("大小写转换: \t \t S.swapcase() \t=%s" %(S.swapcase()))
print("首字母大写: \t \t S.title() \t= %s" %(S.title()))
print('\n')
** #“\t”是指制表符,代表着四个空格,也就是一个tab;**
** # 它的作用是对齐表格数据的各列,可以在不使用表格的情况下, **
** # 将数据上下对齐 **
def strFind():
"字符串搜索、替换"
print("演示字符串S赋值为: ' ThIs is a PYTHON '")
S2='ThIs IS a PYTHON '
print("字符串搜索: \t \t S.find('is') \t =%s" %(S2.find('is')))
print("字符串统计:\t \t S.count('s')\t =%s"%(S2.count('s')))
print("字符串替换:\t \tS.replace('IS','is')=%s"%(S2.replace('IS','is')))
print("去左右空格:\t\tS.strip()\t=#%s#"%(S2.strip()))
print("去左边空格:\t\tS.lstrip() \t=#%s#"%(S2.lstrip()))
print("去右边空格:\t\tS.rstrip() \t=#%s#"%(S2.rstrip()))
print('\n')
** # %s 是将值插入到%s 占位符的字符串**
def strSplit():
"字符串分割、组合"
print("演示字符串分割、组合 ")
print("演示字符串S赋值为:'ThIs is a PYTHON'")
S='ThIs is PYTHON'
print("字符串分割:\t\tS.split() \t =%s"%(S.split()))
print("字符串组合1:\t\t'#'.join(['this','is','a','python'])\t=%s"%('#'.join(['this','is','a','python'])))
print("字符串组合2:\t\t'$'.join(['this','is','a','python'])\t=%s"%('$'.join(['this','is','a','this'])))
print('\n')
** #jion 用字符将字符串连接起来,比如# $ **
def strTest():
"字符串测试"
print("演示字符串测试")
print("演示字符串S赋值为:'abcd'")
S1='abcd'
print("测试S.isalpha()=%s"%(S1.isalpha()))#是否全是字母
print("测试S.isdigit()=%s"%(S1.isdigit()))#是否全是数字
print("测试S.isspace()=%s"%(S1.isspace()))#是否全是空白字符
print("测试S.islower()=%s"%(S1.islower()))#字母是否全部小写
print("测试S.isupper()=%s"%(S1.isupper()))#字母是否全部大写
print("测试S.istitle()=%s"%(S1.istitle()))#是否首字母大写
** #注意if 和__name__之间有个空格 ,否则会报错 **
if __name__=='__main__' :
strCase()
strFind()
strSplit()
strTest()
** #列表的操作 **
class ShowList(object):
def __init__(self):
self.L1=[]
self.L2=[]
self.createList() #创建列表
self.insertData() #插入数据
self.appendData() #追加数据
self.deleteData() #删除数据
self.subList() #列表分片
def createList(self):
print("创建列表:")
print("L1=list('abcdefg')")
self.L1=list('abcdefg')
print("L2=[]")
print("for i in xrange(0,10):")
print("\tL2.append(i)")
for i in range (0,10):
self.L2.append(i)
print("L1= "),
print(self.L1)
print("L2= "),
print(self.L2)
print('\n')
def insertData(self):
print("插入数据:")
print("L1列表中第3个位置插入数字100,执行命令:L1.insert(3,100)")
self.L1.insert(3,100)
print("L1= ")
print(self.L1)
print("L2列表中第10个位置插入字符串'python',执行命令:L2.insert(10,'python')")
self.L2.insert(10,'python')
print("L2= ")
print(self.L2)
print('\n')
def appendData(self):
print("追加数据:")
print("L1列表尾部追加一个列表,执行命令L1.append(")
self.L1.append()
print("L1=")
print(self.L1)
print("L2列表尾部追加一个元组('a','b','c','d'),执行命令L2.append('a','b','c','d')")
self.L2.append(('a','b','c','d'))
print("L2= ")
print(self.L2)
print('\n')
def deleteData(self):
print("删除数据")
print("删除L1的最后一个元素,执行命令L1.pop()")
self.L1.pop()
print("L1= ")
print(self.L1)
print("删除L的第一个元素,执行命令L1.pop(0)")
self.L1.pop(0)
print("L1= ")
print(self.L1)
print("删除L2的第四个元素,执行命令L2.pop(3) ")
self.L2.pop(3)
print("L2= ")
print(self.L2)
print('\n')
def subList(self):
print("列表分片")
print("取列表L的第三到最后一个元素组成的新列表,执行命令L")
print(self.L1)
print("取列表L2的第二个元素到倒数第二个元素组成的新列表,步长为2,执行命令L2")
print(self.L2)
print('\n')
if __name__=='__main__':
print("演示列表操作:\n ")
s1=ShowList() 支持一下 例子举得都挺清楚的 详细,我也学了一段时间,但是效果不好,时间太少没有时间巩固和练习 支持一下,向你学习{:1_893:} 支持,爱学习 不明觉厉。 跟着大佬学习 特来学习的
页:
[1]
2