知识点总结

 

基本数据类型:
    数字型(整型,浮点型)
    字符串型 'jhc'
    列表 [1,'jhc',20]
    字典 {'name':'jhc'}
    布尔型  所有的数值都自带布尔值,其中0、None、空,布尔值为False,其余都为True

运算符
    算数运算符 + - * / % // **
    比较运算符 > < == >= <= !=   了解两个字符串、列表之间的比较方法,ASCII码表比较
    赋值运算符
        增量赋值  += -= /= //= *= **= %=
        交叉赋值  x,y = y,x  x,y,z=y,z,x
        链式赋值  x=y=z=007
        解压赋值  x,y,z=[12,'abc',123]  x,y,*_=[123,'acb',1233,4566,'aqwe']
    逻辑运算符 and or not (not 表示取反,print(not 10 > 3) )
    身份运算符  ==:判断值是否相等
              is:判断id是否相等
              值相等,id可以不同;id相同,值一定相等

输入&输出
    input函数,了解py2.7中raw_input()与input函数的区别
    格式化输出:print( 'my name is %s,age is %s',%('jhc',18))
              其中%d只能格式化输出数字类型的数据;

 

详细内容:

 

基本数据类型

一、数字类型

1、整型int
作用:记录年龄、等级、数量
定义:
age=18
使用:数学运算与比较运算
print(10 / 3)
print(10 > 3)
2、浮点型float
作用:记录薪资、身高、体重
定义:
salary=3.1
使用:数学运算与比较运算
print(3.1 + 2)
print(3.1 > 2)

二:字符串str
作用:记录描述性质的状态
定义:在单引号/双引号/三引号中包含一系列字符
name='egon'

使用:

msg='my name is "egon"'
 print(msg)

+:拼接字符串

x='hello'
 y='world'
 print(x + y)
 print(x + 10)  字符串只能与字符串相加

*用法
print('egon'*10)  #egon重复10次

三 列表类型list
作用:按照位置记录多个同种属性的值(索引对应值,索引从0开始,代表的就是位置),并且可以取出指定位置的某一个值
定义:在[]内用逗号分隔开多个任意类型的值

0    1    2       3
 l=[100,3.2,'aaa',['a','b',['d','e']]]
 print(type(l)) 使用:
 print(l[0])
 print(l[2])
 print(l[3][1])
 print(l[3][2][1]) hobbies=['read','music','eat','sleep']

取出第一个学生的第一个爱好

students_info=[['egon',18,['play',]],['alex',18,['play','sleep']]]
 print(students_info[0][2][0])

四 字典类型dict
作用:记录多个不同属性的值
定义:在{}内用逗号分开个多个元素,每一个元素都由key:value组成
value就是我们存放的值,可以是任意类型,
一个key唯一对应一个value,key应该对value有描述性的功能,所以key通常是str类型

dic={'name':'egon','age':18,'gender':'male'}
 print(type(dic))
 使用:
 print(dic['name'])
 print(dic['age'])info={
    'name':'egon',
    'hobbies':['play','sleep'],
    'company_info':{
        'name':'Oldboy',
        'type':'education',
        'emp_num':40,
    }
}
 print(info['company_info']['name'])          0     1  2    3     4
 emp_info=['egon',18,10,'male',1.81]
 print(emp_info[0])
 print(emp_info[1])
 print(emp_info[2]) 
 info=['egon',18,'male']
 print(info[0])
 print(info[1])
 print(info[2]) info={'name':'egon','age':18,'gender':'male'}
 info=[
     {'name':'egon','age':18,'sex':'male','height':1.81,'weight':70},
     第二个学生的信息,
     第三个学生的信息,
 ] 
 五 布尔类型bool:True、False
 作用:用于判断
 定义:
 x=True
 y=False
 print(type(x))
 print(type(y))
 print(10 > 11)
 print(10 == 10)


强调:所有的数值都自带布尔值,其中0、None、空布尔值为False,其余都为True

if []:
     print('ok')
 else:
print('no ok')

 

输入输出

1、接收用户输入

name=input('请输入你的用户名: ')  name='egon'
 print(name)

2、格式化输出

name=input('username>>> ')
 age=input('age>>> ') print('my name is xxx my age is xxx')
 print('my name is '+name+' my age is '+age)
 print('my name is %s my age is %s' %(name,age)) %d只能接收数字
 print('my age is %d' %10)
 print('my age is %d' %'aaaa')
 print('my age is %d' %10.1) print('my age is %s' %'aaa')
 print('my age is %s' %10)
 print('my age is %s' %['a',1])

了解
在python3中只有一个input:input会将用户输入的任何内容都存成字符串类型

x=input('>>>>: ')  x='[1,2,3]'
print(x,type(x))

在python2中有两种接收用户输入的机制
raw_input:等同于python3的input

 

运算符

1、算数运算符

print(10 / 3)
 print(10 // 3)
 print(10 % 3)
 print(10 ** 2)

2、比较运算符

print(10 == 10)
 print(10 != 10)
 print(10 > 3)
 print(10 < 3)
 print(10 >= 10)
 print('egon' == 'egon')

了解:字符,列表的比较,按照ASCII码表中的序列来比较,比较方法为按照位置,同位比较。

x='abcdef'
 y='abcz'
 print(x > y) l1=[2,'abc',3]
 l2=[2,'3']
 print(l2 > l1)

3、赋值运算符
3.1 增量赋值

age = 18
 age += 1   age=age+1
 print(age)
 age-=1  age=age-1
 print(age)

3.2 交叉赋值
x=11
y=22

temp=x
x=y
y=temp
上述三行代码可以合并为下面这一行
x,y=y,x
print(x,y)

3.3 链式赋值
x=10
y=x
z=y

x=y=z=10
print(id(x),id(y),id(z))

3.4 解压赋值
l=['a','b','c','d','e']
x=l[0]
y=l[1]
z=l[2]
m=l[3]
n=l[4]

等号左边的变量名必须与右面所包含的值一一对应

x,y,z,m,n=l
 print(x,y,z,m,n) x,y,*_,z=l
 print(x,y,z) l=['a','b','c','d','e']
 x,y,x,m,n=l
 x='a'
 y='b'
 x='c'
 m='d'
 n='e' print(x,y,x,m,n)
 l=['a','b','c','d','e']
 x,y,*_=l
 print(_)

4、逻辑运算符
and:逻辑与,用来连接左右两个条件,在左右两个条件同时为True的情况下,最终结果才为True

print(10 < 3 and 3 == 3)
 print(10 > 3 and 3 == 3 and 1 == 1 and 1 > 0)

or:逻辑或,用来连接左右两个条件,左右两个条件但凡有一个为True,最终结果就为True

print(10 < 3 or 1 == 1)
 print(10 < 3 or 1 == 1 or 10 < 11 or 1!= 1 or 'a' != 'a') not:取反
 print(not 10 > 3)
 res=(10 > 3 and 'egon' != 'egon') or ((1 < 3 and 4 >= 3) or (not 8 > 3))
 print(res)


5、身份运算符
==:判断的是值是否相等
is:判断的是id是否相等

值相等,id可以不同

>>> x='info:egon:18:male'
 >>> y='info:egon:18:male'
 >>> id(x),id(y)
 (2924120923496, 2924120923568)
 >>> x == y
 True
 >>> x is y
 False

id相同,值一定相同

>>> x=10
 >>> x=y
 >>> id(x)
 2924120923568
 >>> id(y)
 2924120923568
 >>>
 >>> x is y
 True
 >>> x == y
 True