7-1 基本数据类型 运算符 输入输出 注释
一 python中的注释:
1.1.单行注释:
#开头 在注释的那行代码后空2格,#号后空一格
eg:
print(type(name)) # <class 'str'> 字符串类型
1.2.多行注释:
用三引号''' '''或者 """ """(三个单引号或者三个双引号) 三引号也可用于多行字符串的输入
二 python与用户的交互:
2.1.输入:
a.在python3中输入为input()
input获取的用户输入信息统一为字符串
b.在python2中输入分为1.input和raw_input 其中input需要人为告诉定义的是什么类型的数据 raw_input 和python3中的input功能相同
eg:
>>> name=input('name:') name:zhang Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module> NameError: name 'zhang' is not defined >>> name=input('name:') name:'zhang' >>> type(name) <type 'str'>
2.2.格式化输出
%s 占位符 任意数据
%d 数字占位符 只能用与给数字占位
print('%04d' %123) 输出为0123 其中04代表输出的位数 一旦数据达不到要求数位会进行补零超过数据会如实输出占位符的数量与所占变量数目必须一致
一个print占一行 input自带换行
eg:
print('my name is %s,my age is %s %(name,age))
三 数据类型
什么是数据:衡量或者记录事物的状态或者特征
什么是类型:不同数据有不同的类型去记录
3.1:整型(int)
整形是用来衡量或者记录一个人的年龄,一串qq号,一个手机号码等一串纯数字整形对应的是数字。在python2中分为整形int和长整形long 但是在python3中不区分了。
>>> a=1111111111 >>> type(a) <type 'int'> >>> b=111111111111111111111111111111111111111111111111111111111111111111111111111111 >>> type(b) <type 'long'> >>> exit() C:\Users\何晓东>python Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> a=11111111111111111111111111111111111111111111111111111111111111111111111111111111111 >>> type(a) <class 'int'>
3.2:浮点型(float)
浮点型是用来衡量一个人的体重,身高,薪资等(3.1)。就是小数。
>>> a=3.1 >>> type(a) <class 'float'>
3.3:复数(complx):
>>> xushu=1+2j >>> type(xushu) <class 'complex'> >>> xushu.real # 实部 1.0 >>> xushu.imag # 虚部 2.0
3.4:字符串(str)
字符串是用来存描述性信息的比如一个人的个人简介等。在python中加了引号的被称之为字符串。
3.4.1 单引号字符串
>>> a='字符串1' >>> type(a) <class 'str'>
3.4.2 双引号字符串
>>> b="我还是字符串" >>> type(b) <class 'str'>
3.4.3 三引号字符串(可用于描述多行信息)
s3 = ''' 我是字符串 并且可以写多行 ''' s4 = """ 我是字符串 并且可以写多行 """ print(type(s3)) print(type(s4))
ps:1.三引号也可以做为注释,其中两者的区别在于三引号做注释的时候引号前是没有定义变量的
2.三引号在使用的过程中一定不能串用,不能前面使用单引号后面使用双引号
3.5:列表(list)
列表就是用中括号[]括起来,内部数据通过逗号隔开,内部数据可以是任何数据类型
列表是用来存储多个数据并方便取出其中的一个或者多个 。
info=[ ['zhang',23,['play','game','yunger sister']], ['wang',24,['play','sleep','woman hanzi']] ] I1 = info[0] I2 = I1[2] res = I2[2] print(res) print(I1) print(I2) print(info[0][2][2])
3.6:字典(dict)
字典就是能存储多条数据,每条数据都有对应的描述。其格式为在大括号内有各种数据其格式为key:value(键值对),其中key为数据的描述信息一般为字符串,value是描述信息对应的数据,可以是任何类型的。每组数据之间用逗号隔开。
student_info={ 'name':'zhang', 'age':23, 'sex':'male', 'school_info':{ 'school_name':'oldboy', 'student_count':200, 'addr':'SH' } } d1 = student_info['school_info'] print(d1) res = d1['addr'] print(res) print(student_info['school_info']['addr'])
ps:1.字典给我们提供的只有key,无法直接获取value
2.字典是无序的
3.7:布尔值(bool)
布尔值是用来标识判断事物的可行性(对错)的。bool值有2中在python中为True(对)和False(错)。
print(1>2) print(1<2)
四. 运算符
4.1 数字运算符
以下变量假设a=10,b=20
加法:+ 加——两个对象相加 a+b输出的结果是30
减法:- 减——一个数减去另一个数 b-a输出的结果是10
乘法:* 乘——两个对象相乘 a*b输出的结果是200
除法:/ 除——两个对象相除 a/b输出的结果是0.5
取余: % 取余——返回除法的余数 a%b的余数是10
取整除: // 取整除——返回商的整数部分 9//4输出结果是2
幂: **——返回a的b次方 a**b输出结果是ab
4.2 赋值运算符
以下变量假设a=10,b=20
= 简单的赋值运算符 c=a+b将a+b的运算结果赋值给c(30)
+= 加法复赋值运算符 c+=a就是c=c+a
-= 减法赋值运算符 c-=a就是c=c-a
*= 乘法赋值运算符 c*=a就是c=c*a
/= 除法赋值运算符 c/=a就是c=c/a
%= 取余赋值运算符 c%=a就是c=c%a
//= 取商赋值运算符 c//=a就是c=c//a
**= 幂赋值运算符 c**=a就是c=ca
4.3 比较运算
以下变量假设a=10,b=20
== 等于——比较对象是否相等 a==b输出为False
!=(<>) 不等于——比较两数是否不想等 a!=b输出为True
同理还有>,<,>=,<=
4.4 逻辑运算符
and 与 and两边条件必须都为真,则返回结果是True。如果有一个不为真,则返回是False
or 或 或两边条件只要有一个为真,则返回的结果为True。若两边都是假则返回结果为False
not 取反(非) 如果该对象之前判断为True,则取反后为False
五.交叉赋值
x=1 y=2 c=x x=y y=c print(x,y) x=1 y=2 x,y=y,x print(x,y)
六.链式赋值
x = 100 y = 100 z = 100 x = y = z = 100
七.解压赋值
x=[1,2,3,4,5,6] a,b,c,d,e,f=x # 前面元素的个数必须和列表中元素数相同 a,b,_,_,_,f=x # 中间省略多少个元素就用多少下划线代替 a,*_,f=x # 如果中间省略过多可以用*_来代替 print(a,b,c,d,e,f) print(a,b,f) print(a,f)