CSIC_716_20191102

wyqwilliam 2019-11-02

1、与用户交互

python2和python3在与用户交互方面存在差异。

在python3中,使用input( )方法提供用户输入,而在python2中,使用raw_input( )方法,才能实现同样的效果。

在python2中,input( )方法,用户在输入时必须要声明类型。

python3中所有通过input( )接收到的变量值,全部以str字符串类型存储。

2、格式化输出

a)可以使用占位符%s、%f、%d ;

%s可以接收任意类型;%d用于接收整数,如果接收浮点数,会去除小数;%f可以接收浮点数和整数,会保留6位小数。

a = ‘rampage‘
b = 100.111
c = 200
print(‘my name is %s, my age is %f‘ % (a, b))  # %f 接收浮点数 
print(‘my name is %s, my age is %.3f‘ % (a, b))  # %.3f 表示浮点数精确到小数点后3位
print(‘my name is %s, my age is %d‘ % (a, c))  # %d 接收整数

b) 可以使用 str.format()

# a = ‘rampage‘
# b = 100.111111
# print(type(b))
# print(‘my name is {}, my age is {}‘.format(a, b))
# print(‘my name is {name}, my age is {age}‘.format(name=a, age=b))

c)f-string

# a = ‘rampage‘
# b = 100.111111
# print(type(b))
# print(f‘my name is {a}, my age is {b}‘)

3、数据类型

主要包括   number数字、string字符串、list列表、dict字典、bool布尔

number数字

主要讲三个:整型、 浮点型、复数

在python2中,整型除int外,还有长整型long,long的范围【32位:-2^31~2^31-1  64位:-2^63~2^63-1】;

在python3中整型全部为int型

浮点型float

复数表示方法为    a= 1-2j   

a = 1-2j
print(type(a))  # <class ‘complex‘>
m = a.real
print(type(m))  # <class ‘float‘>
print(f‘m={m}‘)  # m=1.0
n = a.imag
type(n)
print(f‘n={n}‘)  # n=-2.0
print(type(n))  # <class ‘float‘>

string字符串

字符串可以用单、双、三引号来声明。

以 str1+str2这种形式进行字符串的拼接,会在内存中开辟新的空间用于存储 str1+str2

list列表

列表可以存储多个不同类型的值

列表的索引从左往右,从0开始计数

以     list[索引] 进行取值

dict字典

字典通过大括号,以  key:value 的映射关系存储数据,每个键值对以逗号进行分隔。

d以    dict[ key]进行取值

a = [0, 1, 2, 3, 4, [33, 34, 45]]
b = {‘s1‘: ‘男‘, ‘s2‘: 12,  1: [0, 1, 2, 3, [‘key‘, 1]]}
print(a[0])  # 0
print(b[1])  # [0, 1, 2, 3, [‘key‘, 1]]
print(b[‘s1‘])  # 男
print(a[5][1])  # 34
print(type(b[1]))  # <class ‘list‘>
print(b[1][4])  # [‘key‘,1]

bool布尔

布尔型主要用于逻辑判断。

a==b   比较的是变量a,b的 value 

a is b   比较的是变量a,b的 id

变量value相等时,id不一定相等。(受小整数池影响)

变量id相等时,value一定相等。(靠id去找value)

4、运算符

算术运算符            a//b(取整);a%b(取模);a**b(次幂)

 比较运算符           a>b;a<b;...

 赋值运算符           a+=1;a-=1;...

       链式赋值          x=y=z=1

       交互赋值

a=1
b=2
print(a,b)  # 1 2
a,b=b,a  
print(a,b)  # 2 1

       解压赋值     

通过解压赋值,可以用和列表元素个数相同的变量,依次接收列表中的值。

如果变量的个数少于列表元素的个数,可以通过    *_    来填充, *_ 可以在首尾和中间,但只能出现一次

l0 = [‘x‘, ‘y‘, ‘z‘]
m, n, q = l0
print(m, n, q)  # x,y,z
l1 = [1, 2, 3, 4]
*_, a, b, c = l1
d, e, f, *_ = l1
print(a, b, c)  # 2,3,4
print(d, e, f)  # 1,2,3

逻辑运算符            and   or    not

print(True and True or True)  # 1
print(True and True or False)  # 1
print(True and False or True)  # 1
print(False and True or True)  # 1
print(False and False or True)  # 1
print(False and True or False)  # 0
print(True and False or False)  # 0
print(False and False or False)  # 0
print(‘----------------------------‘)
print(True or True and True)  # 1
print(True or True and False)  # 1
print(True or False and True)  # 1
print(False or True and True)  # 1
print(False or False and True)  # 0
print(False or True and False)  # 0
print(True or False and False)  # 1
print(False or False and False)  # 0

相关推荐