2018-02-19  17:15:14

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

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

print("Hello World")

  • print 语句用法
  print 'a', 'b' #print可以接受多个参数,参数的输出之间以空格相隔。
print 'a', #如果逗号之后没有参数,则不会换行。
print 'b'
  • 接下来是输入用户名密码
 import getpass

 _username = 'lym'
_password = 'abc123'
username = input("username:")
#password = getpass.getpass("password:")
password = input("password:")
if _username == username and _password == password:
print("Welcome user {name} login...".format(name=username))
else:
print("Invalid username or password!")
  • 进行格式化拼接
 name = input("name:")
#age = input("age:")
age = int(input("age:"))
print(type(age), type( str(age) ))
job = input("job:")
salary = input("salary:") #用这种比较好
info = '''
--------------info of %s
Name:%s
Age:%d
Job:%s
Salary:%s
'''%(name,name,age,job,salary) info2 = '''
--------------info of {_name}
Name:{_name}
Age:{_age}
Job:{_job}
Salary:{_salary}
'''.format(
_name = name,
_age = age,
_job = job,
_salary = salary
) info3 = '''
--------------info of {0}
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
'''.format(name,age,job,salary) 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__函数中。

  • 注释

最简单的注释“#”

比如:

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

多行注释: """ """

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

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

  • 循环

表达式if ... else

 # 提示输入用户名和密码

 # 验证用户名和密码
# 如果错误,则输出用户名或密码错误
# 如果成功,则输出 欢迎,XXX! #!/usr/bin/env python
# -*- coding: encoding -*- import getpass name = raw_input('请输入用户名:')
pwd = getpass.getpass('请输入密码:') if name == "lym" and pwd == "cmd":
print("欢迎,lym!")
else:
print("用户名和密码错误")

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

 my_age = 28

 user_input = int(input("input your guess num:"))

 if user_input == my_age:
print("Congratulations, you got it !")
elif user_input < my_age:
print("Oops,think bigger!")
else:
print("think smaller!")

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

   count = 0
age_of_oldboy = 26
while True:
guess_age = int(input("guess age: "))
if guess_age == age_of_oldboy:
print("yes,you got it")
break
elif guess_age < age_of_oldboy:
print("think smaller")
else:
print("think bigger")

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

 while count < 3:
guess_age = int(input("guess age:"))
if guess_age == age_of_oldboy:
print("yes,you got it")
break
elif guess_age < age_of_oldboy:
print("think smaller")
else:
print("think bigger")
count +=1
else:
print("fuck off")

此处,count 即计数器

  • 表达式 for loop

最简单的循环10次

for i in range(10):

print("loop:", i )

输出结果为

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

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

 for i in range(0,10,2):
  print("loop:",i)

输出结果为

 loop: 0

 loop: 2

 loop: 4

 loop: 6

 loop: 8

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

  • 表达式while loop

输出0-1000的数字

 count = 0
while True:
print("count:",count)
count +=1
if count ==1000:
break

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

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

 while count < 3:
guess_age = int(input("guess age:"))
if guess_age == age_of_oldboy:
print("yes,you got it")
break
elif guess_age < age_of_oldboy:
print("think smaller")
else:
print("think bigger")
count +=1
if count == 3:
countiue_guess = input("do you want keep guessing?...")
if countiue_guess != "y":
count = 0

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

最新文章

  1. 使用NSData处理数据
  2. USACO Section 2.1: Hamming Codes
  3. linux 后台运行程序
  4. 有关OOM KILLER的一些理解
  5. PHP的抽象类和接口
  6. 在 WindowMobile 上的模拟LED 显示屏插件(转)
  7. 信息安全的核心:CIA三元组 | 安全千字文系列1
  8. (转)$.extend()方法和(function($){...})(jQuery)详解
  9. weblogic 安全漏洞 CVE-2017-5638
  10. QuerySet
  11. 基于TensorFlow的手写中文识别(版本一)
  12. canal mysql slave
  13. 【C++/函数】实验2
  14. (01) 什么是Spring Boot
  15. 计算机底层知识拾遗(九)深入理解内存映射mmap
  16. OpenERP 7中 openerp-server.conf 的解释
  17. 每天一个linux命令(6) ar命令
  18. 半个月使用rust语言的体验
  19. js之global 对象 方法
  20. 使用X-Pack插件来进行权限控制

热门文章

  1. (转)分布式文件存储FastDFS(三)FastDFS配置
  2. Codeforces_733D
  3. 在centOS环境搭建airtest时遇到 Xlib.error.DisplayNameError: Bad display name &quot;&quot; 和Xlib.error.XauthError异常
  4. 微信小程序音频长度获取的问题
  5. java图形验证码实现
  6. BZOJ 2626: JZPFAR KDtree + 堆
  7. 经典的GDB调试命令,包括查看变量,查看内存
  8. ES6学习历程(变量的声明)
  9. Linux之iptables(三、命令---&gt;单主机)
  10. 32.修改IK分词器源码来基于mysql热更新词库