Python笔记:day2之基本数据类型

2.数据类型

  •  整数

   Python可以处理任意大小的整数,当然包括负整数。(记得c和c++里面对整数的大小有约束)

   有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff000xa5b4c3d2,等等。

  • 浮点数

        浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.233.14-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。

  • 布尔值

True和False注意首字母大写。主要应用于判断中。还有就是and  or not 这三个联结词,相当于c中的&& || !,可以看出python比较语言化。

  • 字符串

        (字符串在c中是一个可爱又难搞的东西)字符串是以单引号'或双引号"括起来的任意文本。

说到字符串不免想到转义字符,学c时不少在这碰到题。\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\,\"输出双引号,\'输出单引号。

print('I\'m ok.')
print('I\'m learning\nEnglish.')
print('\\\n\\')
print('\\\t\\')
print(r'\\\n\\')   #这里的r可以使''中的转义字符不转义,即正常输出。
print('''line1     #用'''  '''替换掉
line2
line3''')

运行结果:
I'm ok.
I'm learning
English.
\
\
\	\
\\\n\\
line1
line2
line3

  • list和tuple(让我想到了c中的数组

list:可变有序列表

grade=[10,20,30,40,50]
print(grade)
print('长度:',len(grade))   #计算长度
print(grade[0],grade[1],grade[2],grade[3],grade[4])        #类似于c中数组元素的表示
print(grade[-5],grade[-4],grade[-3],grade[-2],grade[-1])    #最后一个是-1,然后依次往前推
grade.append('haha')                               #在列表最后添加元素,可以和先前的类型不同
print(grade)
grade.insert(3,35)            #在指定位置插入一个元素
print(grade)
grade.pop()                   #在列表最后删除元素
print(grade)
grade.pop(2)                   #在列表指定位置删除元素
print(grade)
grade[0]='成绩:'
print(grade)
name=['Bob','Jack']
grade.insert(1,name)           #列表元素可以是另一个列表,即列表的嵌套
print(grade)
print('长度:',len(grade))
print(grade[1][0])          #访问name中的Bob,有点类似于二维数组


运行结果:[10, 20, 30, 40, 50]
长度: 5
10 20 30 40 50
10 20 30 40 50
[10, 20, 30, 40, 50, 'haha']
[10, 20, 30, 35, 40, 50, 'haha']
[10, 20, 30, 35, 40, 50]
[10, 20, 35, 40, 50]
['成绩:', 20, 35, 40, 50]
['成绩:', ['Bob', 'Jack'], 20, 35, 40, 50]
长度: 6
Bob

 

         tuple:[tʌpl]  可变有序列表

                     无append(),insert(),无法再给元素赋值,无法删除元素和添加元素,特点:安全。(让我想起了const

grade=(30,(40,50),[60,70])
print(grade)
grade[2][0]=65
print(grade)
grade[1][0]=45

运行结果:
(30, (40, 50), [60, 70])
(30, (40, 50), [65, 70])
Traceback (most recent call last):
  File "C:\Users\zjt\Desktop\python\new.py", line 5, in <module>
    grade[1][0]=45
TypeError: 'tuple' object does not support item assignment

第三行中更改了tuple中的list,表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的。

 

 

猜你喜欢

转载自blog.csdn.net/yszdzjt/article/details/81332713