2019-7-01 python基础数据类型

一、python的注释

  python的注释分类:

    单行注释:  #    单行注释

    多行注释:(可以是三个单也可以是三个双)

      '''

      单三引号多行注释 

      '''

      """

      双三引号多行注释

      """

      在字符串中也有三引号,和注释的区别在于,字符串要用变量名赋值

      name = '''

        my name is old boy

      '''

 

二、与用户交互(输出、输入)

    输入:

      1.在python3中的输入  input()

        获取用户输入的全部统一存成字符串类型

      2.在python2中    raw_input()

        将用户输入的任何内容都存成字符串类型

        input()

        需要人为的告诉input()你输入的是什么类型数据

       总结:用户输入的统一都是字符串形式

   

   输出:格式化输出(%s与%d)   

#占位符  %s    %d

name = 'old boy'
age = 18

print('my name is %s my age is %d' %(name,age))
#my name is old boy my age is 18

#如果age和name换一个位置
print('my name is %s my age is %s' %(age,name))
#my name is 18 my age is old boy
格式化输出

      总结:1.个数必须一致不能多也不能少

        2.%d只能给数字占用,%s可以给任意数据类型占用

      

三、数据类型          

    什么是数据:衡量、记录事物的状态、特征

    什么是类型:不同的数据应该有不同的类型来储存

    这节课讲了:int/float/str/list/dict/bool

    整型int  

#1、整型:int
#作用:记录年龄,号码等数字
#定义:
age =20     #int内部定义是 age = int(20)
print(age)
#使用场景:加减乘除

    浮点型 float   

#2.浮点型:float
#作用:记录身高、体重、薪资等小数
#定义:
salary =3.1    #salary = float(3.1)
print(salary)
#使用场景:加减乘除

 为了记忆方便我们把上面的两个叫数字类型(这个只是我们的叫法,实际上没有这样的类型) 

  除了以上两种还有:复数、长整型

  这两个在cmd中演示:

    复数:complex

    长整型:只有python2中才有这种!!!

    

    

    字符串 str

#3.字符串:str
#作用:记录描述性质的数据,比如人名,自我介绍等文字介绍
#定义:引号可以是单引号,双引号,三引号

#第一种  单引号
s1 = '我的名字是old boy'
print(type(s1))   #str

#第二种  双引号
s2 ="我是字符串"
print(type(s2))    #str

#第三种   三引号(可以是单的也可以是双的)
s3 = '''
我是很多行的字符串
'''

s4 = """
我是字符串
"""
print(type(s3))
print(type(s4))

总结:之所以会有三种方式定义,是考虑到用户在输入的时候引号嵌套的情况

比如这种情况:    speak = '老男孩说:"你真厉害" ' ,像这个在单引号中里面还有引号,就不能和外层用一样的,这个就要用双引号

 ps:

  1.字符串之间是可以相加的(相加就是字符串的拼接,但是不同数据类型之间不能相加)

  2.字符串相加是新申请一块内存空间如何拷贝相加的字符串到内存中

  3.字符串还可以做乘法运算   print('hello' * 10)   #打印出十个hello

  

  列表类型 list

#作用:记录、存储多个值,可以方便取出来,比如人的多个爱好,一堆学生姓名
#定义:用[]表示,用逗号分隔多个任意类型的值
l=[1,2,'name',[1,2,3]]

使用:
students_info=[
    ['egon',18,['play',]],
    ['alex',18,['play','sleep']]
]

取出第二个同学的第二个爱好
print(students_info[1][2][1])

  总结:在列表中如果想取元素值,通过下标访问就可以

 

  字典类型  dict

#作用:记录多个key:value值,每一个值value都有一个对应的key,key对value有描述性的功能
#定义:在{}内用逗号分隔开多个key:value元素,其中value可以是任意类型的数据,而key通常应该是字符串类型
info = {'name':'old boy','age':20,'sex':'male'}
print(type(info))

#取出info的name
print(info['name'])

#为什么要用字典,因为字典能够明确的标示数据指代的是哪方面的信息

  总结:

    1.字典是无序性的,不能用索引来取值

    2.字典的key是唯一的,所以key只能是不可变数据类型(例如:str/int)

    3.列表与字典存取数据选择:当存取的是相同的一类数据可以用列表,当存储的数据需要明确一一对应关系用字典

  

  布尔类型  bool

 

#作用:用来作为判断的条件去用
#定义:
tag = True
tag1 = False

print(1>2)
#False

x = 10
y = 20
print(x == y)  #单个等号是赋值,两个等号是比较
print(x is y)   #比较的是两个变量对应的id

 

  总结:id相等的情况下,值一定相等

     id不相等的情况下,值有可能相等

 

四、基本运算符  (算数运算、比较运算、赋值运算、逻辑运算。。。)

#1.算数运算
res=1 + 3
print(res)
print(1 + 3)
print(10 / 3) #结果保留小数部分
print(10 // 3) # 只保留整数部分
print(10 % 3) # 取余数
print(2**3)   #2的三次方

# 2.比较运算:== != > < >= <=
# 了解知识:
# 数字之间可以互相比较大小
print(10 > 3)
print(10 > 3.1)
# 而字符串只能与字符串比较大小(按照对应位置的字符参考ASCII表去比较的)
msg1='hello'
msg2='z'
print(msg1 > msg2)    #按照第一个字母的ASCII的大小比较
#字符串的数字作对比
print('10' == '10') #True print('20'>'3') #False #字符串数字比大小也是从第一位数开始比数字大小,大的就大
#3. 赋值运算 age = 18 # 增量赋值 age += 1 #age=age+1 print(age) # 链式赋值 x=100 y=x z=x x=z=y=100 print(id(x),id(y),id(z)) # 交叉赋值 m=1000 n=2000 方法一: a = m m = n n = a 方法二: n,m=m,n print(m,n) #解压赋值 l = [1,2,3,4] a1 = l[0] a2 = l[1] a3 = l[2] a4 = l[3] #上面是一种获取到列表值的一种方法,还可以用下面这种方法,但是变量的个数和元素的个数要相等 a1,a2,a3,a4 = l a1,_,_,a4 = l #只获取a1和a4的值 l = [1,2,3,4,5,6,7,3,2,5,2,4,5] #当这个列表的元素很多,我们就不好用_来设置,用下面这种方法 a1,*_,a4 = l #只取第一个和最后一个的值,其他都放在一个列表当中

  逻辑运算: 与、或、非   (and/or/not)

  print (1>0 and 3>4)  #False        #and两边必须同时成立  结果才成立

  print( 1 > 0 or  1 > 0 and 3 > 4)  # or只要有一边成立 立即成立 后面的无需再看

  print(not 1 > 3)  # 结果取反

 

posted @ 2019-07-01 17:29  只会玩辅助  阅读(210)  评论(0编辑  收藏  举报