2018-02-19  17:15:14

Python语言相对于其他语言较为简洁,也相对好入门比如后面不加分号,基本见不着大括号等优点

  • 第一个程序,也是学每门语言都需要掌握的第一个代码

print("Hello World")

  • print 语句用法
  1. print 'a', 'b' #print可以接受多个参数,参数的输出之间以空格相隔。
  2. print 'a', #如果逗号之后没有参数,则不会换行。
  3. print 'b'
  • 接下来是输入用户名密码
  1. import getpass
  2.  
  3. _username = 'lym'
  4. _password = 'abc123'
  5. username = input("username:")
  6. #password = getpass.getpass("password:")
  7. password = input("password:")
  8. if _username == username and _password == password:
  9. print("Welcome user {name} login...".format(name=username))
  10. else:
  11. print("Invalid username or password!")
  • 进行格式化拼接
  1. name = input("name:")
  2. #age = input("age:")
  3. age = int(input("age:"))
  4. print(type(age), type( str(age) ))
  5. job = input("job:")
  6. salary = input("salary:")
  7.  
  8. #用这种比较好
  9. info = '''
  10. --------------info of %s
  11. Name:%s
  12. Age:%d
  13. Job:%s
  14. Salary:%s
  15. '''%(name,name,age,job,salary)
  16.  
  17. info2 = '''
  18. --------------info of {_name}
  19. Name:{_name}
  20. Age:{_age}
  21. Job:{_job}
  22. Salary:{_salary}
  23. '''.format(
  24. _name = name,
  25. _age = age,
  26. _job = job,
  27. _salary = salary
  28. )
  29.  
  30. info3 = '''
  31. --------------info of {0}
  32. Name:{0}
  33. Age:{1}
  34. Job:{2}
  35. Salary:{3}
  36. '''.format(name,age,job,salary)
  37.  
  38. print(info3)

由以上可以看出,想输入一个英文或者数字可以这样写

name = input("name:")

简单而快捷

  • format方法

有时我们并不想用其他信息来构造字符串。这儿format()方法就很有用。

python从2.6开始支持format,新的更加容易读懂的字符串格式化方法,

从原来的% 模式变成新的可读性更强的

  1. 花括号声明{}、用于渲染前的参数引用声明, 花括号里可以用数字代表引用参数的序号, 或者 变量名直接引用。

  2. 从format参数引入的变量名 、

  3. 冒号:、

  4. 字符位数声明、

  5. 空白自动填补符 的声明

  6. 千分位的声明

  7. 变量类型的声明: 字符串s、数字d、浮点数f

  8. 对齐方向符号 < ^ >

  9. 属性访问符中括号 ☐

  10. 使用惊叹号!后接a 、r、 s,声明 是使用何种模式, acsii模式、引用__repr__ 或 __str__

  11. 增加类魔法函数__format__(self, format) , 可以根据format前的字符串格式来定制不同的显示, 如: ’{:xxxx}’  此时xxxx会作为参数传入__format__函数中。

  • 注释

最简单的注释“#”

比如:

  1. #print("这是一个注释")

多行注释: """ """

  1. '''
  2. for i in range(10):
  3. if i<5:
  4. continue #不往下走了,直接进入下一次loop
  5. print("loop:", i )
  6. '''

整段话就被全部注释掉了,也很简单

  • 循环

表达式if ... else

  1. # 提示输入用户名和密码
  2.  
  3. # 验证用户名和密码
  4. # 如果错误,则输出用户名或密码错误
  5. # 如果成功,则输出 欢迎,XXX!
  6.  
  7. #!/usr/bin/env python
  8. # -*- coding: encoding -*-
  9.  
  10. import getpass
  11.  
  12. name = raw_input('请输入用户名:')
  13. pwd = getpass.getpass('请输入密码:')
  14.  
  15. if name == "lym" and pwd == "cmd":
  16. print("欢迎,lym!")
  17. else:
  18. print("用户名和密码错误")

猜年龄游戏:在程序中设定好你的年龄,然后让用户输入年龄比大小,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了

  1. my_age = 28
  2.  
  3. user_input = int(input("input your guess num:"))
  4.  
  5. if user_input == my_age:
  6. print("Congratulations, you got it !")
  7. elif user_input < my_age:
  8. print("Oops,think bigger!")
  9. else:
  10. print("think smaller!")

若改为无限次数猜,直到你猜对了为止

  1. count = 0
  2. age_of_oldboy = 26
  3. while True:
  4. guess_age = int(input("guess age: "))
  5. if guess_age == age_of_oldboy:
  6. print("yes,you got it")
  7. break
  8. elif guess_age < age_of_oldboy:
  9. print("think smaller")
  10. else:
  11. print("think bigger")

若限制次数为三次,超过三次就被踢出游戏

  1. while count < 3:
  2. guess_age = int(input("guess age:"))
  3. if guess_age == age_of_oldboy:
  4. print("yes,you got it")
  5. break
  6. elif guess_age < age_of_oldboy:
  7. print("think smaller")
  8. else:
  9. print("think bigger")
  10. count +=1
  11. else:
  12. print("fuck off")

此处,count 即计数器

  • 表达式 for loop

最简单的循环10次

for i in range(10):

print("loop:", i )

输出结果为

  1. loop: 0
  2. loop: 1
  3. loop: 2
  4. loop: 3
  5. loop: 4
  6. loop: 5
  7. loop: 6
  8. loop: 7
  9. loop: 8
  10. loop: 9

如果想跳着输出 loop可以修改代码为

  1. for i in range(0102):
  2.   print("loop:",i)

输出结果为

  1. loop: 0
  2.  
  3. loop: 2
  4.  
  5. loop: 4
  6.  
  7. loop: 6
  8.  
  9. loop: 8

1,3,5,7就分隔开了,从0开始每隔两个loop输出一个loop

  • 表达式while loop

输出0-1000的数字

  1. count = 0
  2. while True:
  3. print("count:",count)
  4. count +=1
  5. if count ==1000:
  6. break

输出结果太多,这里就不截图了

再拓展一下,如何达到,让用户猜数字,三次内如果猜对则break,如果三次后还没有猜对则提问是否愿意继续猜? 如果打出的不是Y,则继续猜,依次循环,代码如下

  1. while count < 3:
  2. guess_age = int(input("guess age:"))
  3. if guess_age == age_of_oldboy:
  4. print("yes,you got it")
  5. break
  6. elif guess_age < age_of_oldboy:
  7. print("think smaller")
  8. else:
  9. print("think bigger")
  10. count +=1
  11. if count == 3:
  12. countiue_guess = input("do you want keep guessing?...")
  13. if countiue_guess != "y":
  14. count = 0

今天的学习的内容就是以上内容,相信大家看了以后也很容易理解,那么期待第二天的内容,我们下期见:)

浅谈自学Python之路(day1)的更多相关文章

  1. 浅谈自学Python之路(day2)

    今天的主要内容是: 标准库 数据类型知识 数据运算 三元运算 bytes类型 字符串操作 字典 集合 标准库 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有 ...

  2. 浅谈自学Python之路(day3)

    今天的主要内容是: 撒 文件操作 对文件操作的流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: tonghuazhen 听说白雪公主在逃跑 小红帽在担心 ...

  3. 浅谈自学Python之路(购物车程序练习)

    购物车程序练习 今天我们来做一个购物车的程序联系,首先要理清思路 购物车程序需要用到什么知识点 需要用到哪些循环 程序编写过程中考虑值的类型,是int型还是字符串 如果值为字符串该怎么转成int型 用 ...

  4. 小白的Python之路 day1

    Python之路,Day1 - Python基础1 本节内容 Python介绍 发展史 Python 2 or 3? 一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van ...

  5. 小白的Python之路 day1 变量

    Python之路,Day1 - Python基础1 变量 变量用于存储在计算机程序中引用和操作的信息.它们还提供了一种用描述性名称标记数据的方法,这样我们的程序就能更清晰地被读者和我们自己理解.将变量 ...

  6. 自学Python之路

    自学Python之路[第一回]:初识Python    1.1 自学Python1.1-简介    1.2 自学Python1.2-环境的搭建:Pycharm及python安装详细教程    1.3  ...

  7. 自学Python之路-Python核心编程

    自学Python之路-Python核心编程 自学Python之路[第六回]:Python模块       6.1 自学Python6.1-模块简介    6.2 自学Python6.2-类.模块.包  ...

  8. 自学Python之路-Python基础+模块+面向对象+函数

    自学Python之路-Python基础+模块+面向对象+函数 自学Python之路[第一回]:初识Python    1.1 自学Python1.1-简介    1.2 自学Python1.2-环境的 ...

  9. 自学Python之路-django

    自学Python之路-django 自学Python之路[第一回]:1.11.2 1.3

随机推荐

  1. vue编辑回显问题

    真是疯了,vue怪毛病真多 就下面这玩意儿,多选组合框,新增的时候好用的不行不行的,到了编辑的时候,要回显数据,怪毛病一堆一堆的 首先,回显的时候要传一个数组,但是这个数组里的元素得是字符串类型的,如 ...

  2. 三年半Java后端面试鹅厂,三面竟被虐的体无完肤

    经过半年的沉淀,加上对MySQL,redis和分布式这块的补齐,终于开始重拾面试信心,再次出征. 鹅厂 面试职位: go后端开发工程师,接受从Java转语言 都知道鹅厂是cpp的主战场,而以cpp为背 ...

  3. 聊聊JS动画库:Velocity.js

    前言 又到了炎热的7月,很久没有更新技术文章了,原因是上月月底实习结束,从公司离职.然后最近在弄自己的项目和考驾照,为了下次公司的应聘做准备,送别了女朋友到外地,哩哩啦啦半个月把一切事情都办妥后,还是 ...

  4. JavaScript控制iframe中元素的样式

    //根据ID获取要操控元素 var deptObjs=document.getElementById("IFRAMEID").contentWindow.document.getE ...

  5. STM32_NVIC寄存器详解

    在MDK内,与NVIC相关的寄存器,MDK为其定义了如下的结构体:  typedef struct  {        vu32   ISER[2];    //2个32位中断使能寄存器分别对应到60 ...

  6. Linux 实用指令(4)

    目录 实用指令 1.指定运行级别 2.切换到指定运行级别的指令 3.帮助指令 3.1man获得帮助信息 3.2help指令 4.文件目录类 4.1pwd指令 4.2 ls指令 4.3 cd指令 4.4 ...

  7. 用 console.time()和 console.timeEnd() 测试你的 javascript 代码执行效率

    无意中学习到了一种测试 javascript 代码执行效率的一种方法,就记下来便于以后使用,用到了console对象中的  time  和  timeEnd  方法 . console.time('m ...

  8. linux学习8-正则表达式基础

    正则表达式基础 实验介绍 虽然我们这一节的标题是正则表达式,但实际这一节实验只是介绍grep,sed,awk这三个命令,而正则表达式作为这三个命令的一种使用方式(命令输出中可以包含正则表达式).正则表 ...

  9. yum http源

    统一集群内,有一个yum本地源即可,集群内其他机器的yum可配成http源 方法: yum1:本地yum源节点 yum2:集群内其他节点 yum1: ①service httpd start ②mki ...

  10. CDOJ 889 Battle for Silver

    Battle for Silver Time Limit: 2999/999MS (Java/Others)     Memory Limit: 65432/65432KB (Java/Others) ...