一 输入输出

python3中统一都是input,python2中有raw_input等同于python3的input,另外python2中也有input

1.res=input("python3: ")

2.res=raw_input("python2: ")

3.res=raw_input("python2: ")

1,2无论接收何种输入,都被存为字符串赋值给res,而3的意思是,用户输入何种类型,就以何种类型赋值给res

  1. #!/usr/bin/env python
  2.  
  3. name=input('请输入用户名:')
  4. print(name)

执行

  1. C:\Users\Administrator>python D:\python_test\hello.py
  2. 请输入用户名:egon
  3. egon

===============================================================================

输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:

  1. #!/usr/bin/env python
  2.  
  3. import getpass
  4. password=getpass.getpass('请输入密码:')
  5. print(password)

执行(在pycharm中无法执行,需要到终端中执行)

  1. C:\Users\Administrator>python D:\python_test\hello.py
  2. 请输入密码:
  3. 123456

Python2 的input,输入什么类型,就是什么类型(输入字符串应该加引号‘’,不加引号会识别成变量名,找不到就报错)

  1. >>> raw_input_A = raw_input("raw_input: ")
  2. raw_input: abc
  3. >>> input_A = input("Input: ")
  4. Input: abc
  5.  
  6. Traceback (most recent call last):
  7. File "<pyshell#1>", line 1, in <module>
  8. input_A = input("Input: ")
  9. File "<string>", line 1, in <module>
  10. NameError: name 'abc' is not defined
  11. >>> input_A = input("Input: ")
  12. Input: "abc"
  13. >>>
  1. >>> raw_input_B = raw_input("raw_input: ")
  2. raw_input: 123
  3. >>> type(raw_input_B)
  4. <type 'str'>
  5. >>> input_B = input("input: ")
  6. input: 123
  7. >>> type(input_B)
  8. <type 'int'>
  9. >>>

例子 1 可以看到:这两个函数均能接收 字符串 ,但 raw_input() 直接读取控制台的输入(任何类型的输入它都可以接收)。而对于 input() ,它希望能够读取一个合法的 python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个 SyntaxError 。

例子 2 可以看到:raw_input() 将所有输入作为字符串看待,返回字符串类型。而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float );同时在例子 1 知道,input() 可接受合法的 python 表达式,举例:input( 1 + 3 ) 会返回 int 型的 4 。

Python3 中的input相当于python2中的raw_input。

二 简单的运算符

算数运算;逻辑运算;比较运算;关系运算;

1、算数运算:

2、比较运算:

3、赋值运算:

4、位运算:

注: ~  举例: ~5 = -6  解释: 将二进制数+1之后乘以-1,即~x = -(x+1),-(101 + 1) = -110

按位反转仅能用在数字前面。所以写成 3+~5 可以得到结果-3,写成3~5就出错了

5、逻辑运算:

and注解:

  1. 在Python 中,and 和 or 执行布尔逻辑演算,如你所期待的一样,但是它们并不返回布尔值;而是,返回它们实际进行比较的值之一。
  2. 在布尔上下文中从左到右演算表达式的值,如果布尔上下文中的所有值都为真,那么 and 返回最后一个值。
  3. 如果布尔上下文中的某个值为假,则 and 返回第一个假值

or注解:

  1. 使用 or 时,在布尔上下文中从左到右演算值,就像 and 一样。如果有一个值为真,or 立刻返回该值
  2. 如果所有的值都为假,or 返回最后一个假值
  3. 注意 or 在布尔上下文中会一直进行表达式演算直到找到第一个真值,然后就会忽略剩余的比较值

and-or结合使用:

  1. 结合了前面的两种语法,推理即可。
  2. 为加强程序可读性,最好与括号连用,例如:
    1. 1 and 'x') or 'y'

6、成员运算:

7.身份运算

 

8.运算符优先级:自上而下,优先级从高到低

三 流程控制

3.1 条件语句

1 单分支

2 多分支

需求一、用户登陆验证

  1. #!/usr/bin/env python
  2.  
  3. name=input('请输入用户名字:')
  4. password=input('请输入密码:')
  5.  
  6. if name == 'egon' and password == '123':
  7. print('egon login success')
  8. else:
  9. print('用户名或密码错误')

需求二、根据用户输入内容输出其权限

  1. #!/usr/bin/env python
  2. #根据用户输入内容打印其权限
  3.  
  4. '''
  5. egon --> 超级管理员
  6. tom --> 普通管理员
  7. jack,rain --> 业务主管
  8. 其他 --> 普通用户
  9. '''
  10. name=input('请输入用户名字:')
  11.  
  12. if name == 'egon':
  13. print('超级管理员')
  14. elif name == 'tom':
  15. print('普通管理员')
  16. elif name == 'jack' or name == 'rain':
  17. print('业务主管')
  18. else:
  19. print('普通用户')

3.2 循环语句

while 循环

1、基本循环

  1. while 条件:
  2.  
  3. # 循环体
  4.  
  5. # 如果条件为真,那么循环体则执行
  6. # 如果条件为假,那么循环体不执行

2、break

break用于退出本层循环

  1. while True:
  2. print "123"
  3. break
  4. print "456"

3、continue

continue用于退出本次循环,继续下一次循环

  1. while True:
  2. print "123"
  3. continue
  4. print "456"

4、tag

  1. #!/usr/bin/env python
  2. #_*_coding:utf-8_*_
  3.  
  4. # while True:
  5. # username=input('username: ')
  6. # password=input('password: ')
  7. # if username == 'egon' and password == '123':
  8. # while True:
  9. # cmd=input('>>: ')
  10. # if cmd == 'q':
  11. # break
  12. # print('------>%s' %cmd)
  13. # break
  14. tag=True
  15. while tag:
  16. username=input('username: ')
  17. password=input('password: ')
  18. if username == 'egon' and password == '':
  19. while tag:
  20. cmd=input('>>: ')
  21. if cmd == 'q':
  22. tag=False
  23. continue
  24. print('------>%s' %cmd)

5、for循环

  1. for i in range(1,10):
  2. for j in range(1,i+1):
  3. print('%s*%s=%s' %(i,j,i*j),end=' ')
  4. print()
  1. # -*-coding:UTF-8-*-
  2. #99乘法表
  3. for i in range(1,10):
  4. for n in range(1,i+1):
  5. print("%s*%s=%s" %(n,i,i*n),end=' ') #print默认后面跟一个\n换行,end的意思是将最后默认的\n换成 end 指定的内容。
  6. print()
  7. ------------------------------------------------------------
  8.  
  9. D:\Python36\python.exe D:/py/train.py
  10. 1*1=1
  11. 1*2=2 2*2=4
  12. 1*3=3 2*3=6 3*3=9
  13. 1*4=4 2*4=8 3*4=12 4*4=16
  14. 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
  15. 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
  16. 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
  17. 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
  18. 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
  19.  
  20. Process finished with exit code 0
转义字符 描述
\(在行尾时) 续行符
\\ 反斜杠符号
\' 单引号
\" 双引号
\a 响铃
\b 退格(Backspace)
\e 转义
\000
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
\f 换页
\oyy 八进制数,yy代表的字符,例如:\o12代表换行
\xyy 十六进制数,yy代表的字符,例如:\x0a代表换行
\other 其它的字符以普通格式输出

Python(输入、输出;简单运算符;流程控制;转译)的更多相关文章

  1. python - 用户交互/数据类型/格式化输出/运算符/流程控制单双多分支

    python:用户交互: 等用户输入,做反应: username=input("username:")password=input("password:")pr ...

  2. python的学习笔记01_3 基本运算符 流程控制if while 字符串常用办法

    基本运算符 运算符 计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算,今天我们暂只学习算数运算.比较运算.逻辑运 ...

  3. 9.python的布尔类型与流程控制

    布尔类型其实可以算是一种特殊的数字,下面是 help() 函数得到的帮助信息: Help on class bool in module __builtin__: class bool(int) | ...

  4. python的布尔类型与流程控制

    布尔类型其实可以算是一种特殊的数字,下面是 help() 函数得到的帮助信息:  bool 首先,请注意这一行:

  5. Python 3 快速入门 2 —— 流程控制与函数

    本文假设你已经有一门面向对象编程语言基础,如Java等,且希望快速了解并使用Python语言.本文对重点语法和数据结构以及用法进行详细说明,同时对一些难以理解的点进行了图解,以便大家快速入门.一些较偏 ...

  6. Python学习(三)流程控制

    Python流程控制 本章介绍 python 的基础流程控制.包括 if 条件语句.for 循环 和 while 循环语句: continue 及 break 的用法等. 基本用法与 C 和 Java ...

  7. python基础(3)---流程控制

    流程控制 与C语言不通的是python的流程控制代码块不是用{}花括号表示的,而是强制缩进来控制的:而且缩进必须一致,官方推荐是使用4个空格,不建议使用tab(制表符)做缩进,一是不同的系统tab所占 ...

  8. Python基础(三)--流程控制之if、while、for,break与continue

    一.流程控制之if……else…… if语句是指编程语言中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一 if 条件1: 缩进的代码块 elif 条件2: 缩进的代码 ...

  9. day01 python起源 介绍 解释器 变量 流程控制if

    day01 python   一.python的起源     1.python简介     java 企业级应用, android, app     c 操作系统, 做开发语言的, 游戏的内核     ...

随机推荐

  1. CSS border-style 属性查询

    border-style 属性用于设置元素所有边框的样式,或者单独地为各边设置边框样式.只有当这个值不是 none 时边框才可能出现. none solid dotted dashed double ...

  2. windows7 mongodb 安装急遇到的问题

    偶尔上一次博客园,才发现自己这么久没有写东西了.今天更新一篇. 作为前端开发者,node.js 无非是一个强心剂.有了node.js 后端开发变得不需要再搞另一门语言,一个javascript 就能搞 ...

  3. sublime3 SublimeREPL python3

    https://blog.csdn.net/lylfv/article/details/81453016

  4. 请写出JavaScript中常用的三种事件。

    请写出JavaScript中常用的三种事件. 解答: onclick,onblur,onChange

  5. Window对应的类为java.awt.Windows, 它可独立于其他Container而存在

    Window对应的类为java.awt.Windows, 它可独立于其他Container而存在,它有两个子类, Frame和Dialog, Frame是具有标题(title)和可伸缩的角(resiz ...

  6. 使用BarcodeLib.Barcode.ASP.NET生成条形码

    生成条形码图片,然后在前台页面展示: <img id="img" src="Mobile/<%=url %>"/> public str ...

  7. linx常用查看命令和内存分配及释放

    1.命令行 运行时间多久:uptime 查看时间日期: date:date  -s '2014-7-4 10:35:20' hwcloc 查看内存分配: top free:http://blog.cs ...

  8. [转]使用TeamCity对项目进行可持续集成管理(一)

    一.可持续集成管理 持续集成,CI:即Continuous integration. 可持续集成的概念是基于团队(小组)协作开发而提出来的,为了提高团队开发效率与降低集成风险(早发现,早解决.晚发现, ...

  9. css position float (写的相当好)

    对CSS中的Position.Float属性的一些深入探讨 对于Position.Float我们在平时使用上可以说是使用频率非常高的两个CSS属性,对于这两个属性的使用上面可能大多数人存在一些模糊与不 ...

  10. 56、LeakCanary——直白的展现Android中的内存泄露

    转载:http://blog.csdn.net/watermusicyes/article/details/46333925 DEMO下载地址:https://github.com/SOFTPOWER ...