Python语法入门之与用户交互、运算符

一 程序与用户交互

1.1 什么是与用户交互? 用户交互就是人往计算机中input/输入数据,计算机print/输出结果 1.2 为什么要与用户交互? 为了让计算机能够像人一样与用户沟通交流 1.3 如何与用户交互? 交互的本质就是输入、输出

			1.3.1 输入input
							 # 在python3中input功能会等待用户的输入,用户输入任何内容,都存成字符串类型,然后赋值给等号左边的变量名
							>>> username=input('请输入您的用户名:') 
							请输入您的用户名:jack # username = "jack"
							>>> password=input('请输入您的密码:') 
							请输入您的密码:123 # password = "123"
							#了解知识:
							#1、在python2中存在一个raw_input功能与python3中的input功能一模一样
							#2、在python2中还存在一个input功能,需要用户输入一个明确的数据类型,输                   入什么类型就存成什么类型
							>>> l=input('输入什么类型就存成什么类型: ')
							输入什么类型就存成什么类型: [1,2,3]
							>>> type(l)
							<type 'list'>
			1.3.2 输出print
							>>> print('hello world')  # 只输出一个值
							hello world
							>>> print('first','second','third')  # 一次性输出多个值,值用逗号隔开
							first second third

							# 默认print功能有一个end参数,该参数的默认值为"\n"(代表换行),可以将end参数的值改成任意其它字符
							print("aaaa",end='')
							print("bbbb",end='&')
							print("cccc",end='@')
							#整体输出结果为:aaaabbbb&cccc@
			1.3.3 输出之格式化输出
			1) 什么是格式化输出?
					把一段字符串里面的某些内容替换掉之后再输出,就是格式化输出。
			2) 为什么要格式化输出?
					我们经常会输出具有某种固定格式的内容,比如:'亲爱的xxx你好!你xxx月的话费是xxx,余额是xxx‘,我们需要做的就是将xxx替换为具体的内容。
			3) 如何格式化输出?
					这属于字符串功能,用到了占位符,如:%s、%d:
					# %s占位符:可以接收任意类型的值
					# %d占位符:只能接收数字
					>>> print('亲爱的%s你好!你%s月的话费是%d,余额是%d' %('tony',12,103,11))
					亲爱的tony你好!你12月的话费是103,余额是11

二、逻辑运算符优先级问题

#1、三者的优先级关系:not>and>or,同一优先级默认从左往右计算。
>>> 3>4 and 4>3 or 1==3 and 'x' == 'x' or 3 >3
False
#2、最好使用括号来区别优先级,其实意义与上面的一样
'''
原理为:
(1) not的优先级最高,就是把紧跟其后的那个条件结果取反,所以not与紧跟其后的条件不可分割
(2) 如果语句中全部是用and连接,或者全部用or连接,那么按照从左到右的顺序依次计算即可
(3) 如果语句中既有and也有or,那么先用括号把and的左右两个条件给括起来,然后再进行运算
'''
>>> (3>4 and 4>3) or (1==3 and 'x' == 'x') or 3 >3
False 
#3、短路运算:逻辑运算的结果一旦可以确定,那么就以当前处计算到的值作为最终结果返回
>>> 10 and 0 or '' and 0 or 'abc' or 'egon' == 'dsb' and 333 or 10 > 4
我们用括号来明确一下优先级
>>> (10 and 0) or ('' and 0) or 'abc' or ('egon' == 'dsb' and 333) or 10 > 4
短路:       0      ''            'abc'                    
            假     假              真

返回:                            'abc'
python 中的and从左到右计算表达式,python中的逻辑操作符and可以将任意表达式连接在一起,并得到一个布尔类型的值,如果两边都为真,则返回第二个值,如果第一(二)个为假,则返回第一(二)个值
#4、短路运算面试题:
>>> 1 or 3
1
>>> 1 and 3
3
>>> 0 and 2 and 1
0
>>> 0 and 2 or 1
1
>>> 0 and 2 or 1 or 4
1
>>> 0 or False and 1
False