设为首页 收藏本站
查看: 1187|回复: 0

[经验分享] python笔记--语句

[复制链接]

尚未签到

发表于 2018-8-14 11:27:00 | 显示全部楼层 |阅读模式
  python语句特点:
  1.条件后面都以分号结尾
  2.缩进问题:缩进是python表示语句块的唯一方法,一个语句快中的所有语句必须使用相同的缩进。关于缩进风格,标准python风格是每个缩进级别使用4个空格,最好不要使用Tab制表符,因为不同的编辑器处理制表符的方式不同。
  条件判断
  1.单分支if语句
if <条件判断>:  
     <执行>
  如果if语句判断是True,就把缩进的语句执行了,否则,什么也不做。也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else执行了。
  例如:
a=10  
if a>20:
  
    print "more than 20"
  
else:
  
    print "less than 20"
  很明显,执行程序后,在屏幕打印出了”less than 20”,有一种“三目表达式”可以简写if语句,例如:
a=10  
result=("more than 20" if a>20 else "less than 20")
  
print (result)
  注意:如果我们把判断语句的小括号换成方括号,那么输出结果就是一个列表,即['less than 20']。
  2.多分支if语句
if <条件判断1>:  
    <执行1>
  
elif
  
    <执行2>
  
elif
  
    <执行3>
  
else:
  
     <执行4>
  if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elif和else。
  补充:
  1.条件为True的情况,除了条件成立,还有就是:
if x:  
      print('True')
  只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False。
  2.input问题
  执行程序后需要用户手动输入,这就需要使用”input”。在python3.5中,input会把所有输入的字符转为”str”数据类型吗,例如:
>>> a=input("number:")  
number:5
  
>>> type(a)
  
<class 'str'>
  
>>> b=int(input("number:"))
  
number:10
  
>>> type(b)
  
<class 'int'>
  3.pass
  pass语句作用是不执行当前代码块,例如:
a=10  
if a>20:
  
    print "more than 20"
  
else:
  
    pass
  执行程序后,返回结果为空。
  循环语句
  1.for循环
  (1)迭代对象
  遍历字符串,每个字符当做单个遍历:
>>> for i in "abc":  
...     print i
  
...
  
a
  
b
  
c
  使用 range()函数生成一个数字序列列表,并遍历:
>>> for i in range(1,5):  
...     print i
  
...
  
1
  
2
  
3
  
4
  
#range()只有一个元素,从0开始遍历:
  
>>> range(5)
  
[0, 1, 2, 3, 4]
  2)嵌套循环
  逐个循环判断外层列表里元素是否存在内层列表:
>>> for i in range(1,6):  
...     for x in range(3,8):
  
...        if i == x:
  
...           print i
  
...
  
3
  
4
  
5
  3)简写语句
  简写 for 语句:
>>> result = (x for x in range(5))  
>>> result
  
<generator object <genexpr> at 0x030A4FD0>
  
>>> type(result)
  
<type 'generator'>
  # 同样用中括号会以列表存储
>>> result = [ x for x in range(5)]  
>>> type(result)
  
<type 'list'>
  
>>> result
  
[0, 1, 2, 3, 4]
  for 和 if 语句写一行:
>>> result = [ x for x in range(5) if x % 2 == 0]  
>>> result
  
[0, 2, 4]
  这种使用中括号括起来的表达式称为列表解析表达式,每一次迭代,都会把迭代对象放到 x 变量中,最后表达式计算值生成一个列表。
  2.while循环
  1)输出序列
  当条件不满足时,停止循环:
>>> count = 0  
>>> while count < 5:
  
...     print count
  
...     count += 1
  
...
  
0
  
1
  
2
  
3
  
4
  2)死循环
>>> import time  
>>> i = 1
  
>>> while True:
  
...     print i
  
...     i += 1
  
...     time.sleep(0.5)
  
...
  
1
  
2
  
3
  
......
  注意:当表达式值为 true 或者非零时,都会一直循环。
  补充:
  break
  在循环中,break语句可以提前退出循环。
  continue
  在循环过程中,也可以通过continue语句,跳过当前的这次循环,直接开始下一次循环。
  ,
  编写python脚本时,有时候需要将输出的内容不换行,按一行输出,可以在语句末尾添加一个逗号,例如:
>>> for i in range(5):  print i,
  

  
0 1 2 3 4
  练习:
  执行程序后,要求用户输入姓名和密码,正确则返回欢迎信息,错误返回提示信息,三次错误后退出程序。
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
a={'zhangsan':'123abc','lisi':'2','wangwu':'3'}
  
b=a.keys()
  
for i in range(3):
  
    name=raw_input("please enter your name:")
  
    password=raw_input("please enter your password:")
  
    if name in b:
  
        if password==a[name]:
  
            print ("welcome!")
  
            break
  
        else:
  
            print ("your password is false!")
  
    else:
  
        print ("no this user!")
  
else:
  
    print ("too much retry!")

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-551582-1-1.html 上篇帖子: python笔记--深浅拷贝 下篇帖子: 利用python进行数据分析——histogram
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表