浅谈自学Python之路(day1)
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,新的更加容易读懂的字符串格式化方法,
从原来的% 模式变成新的可读性更强的
花括号声明{}、用于渲染前的参数引用声明, 花括号里可以用数字代表引用参数的序号, 或者 变量名直接引用。
从format参数引入的变量名 、
冒号:、
字符位数声明、
空白自动填补符 的声明
千分位的声明
变量类型的声明: 字符串s、数字d、浮点数f
对齐方向符号 < ^ >
属性访问符中括号 ☐
使用惊叹号!后接a 、r、 s,声明 是使用何种模式, acsii模式、引用__repr__ 或 __str__
增加类魔法函数__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
今天的学习的内容就是以上内容,相信大家看了以后也很容易理解,那么期待第二天的内容,我们下期见:)
浅谈自学Python之路(day1)的更多相关文章
- 浅谈自学Python之路(day2)
今天的主要内容是: 标准库 数据类型知识 数据运算 三元运算 bytes类型 字符串操作 字典 集合 标准库 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有 ...
- 浅谈自学Python之路(day3)
今天的主要内容是: 撒 文件操作 对文件操作的流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: tonghuazhen 听说白雪公主在逃跑 小红帽在担心 ...
- 浅谈自学Python之路(购物车程序练习)
购物车程序练习 今天我们来做一个购物车的程序联系,首先要理清思路 购物车程序需要用到什么知识点 需要用到哪些循环 程序编写过程中考虑值的类型,是int型还是字符串 如果值为字符串该怎么转成int型 用 ...
- 小白的Python之路 day1
Python之路,Day1 - Python基础1 本节内容 Python介绍 发展史 Python 2 or 3? 一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van ...
- 小白的Python之路 day1 变量
Python之路,Day1 - Python基础1 变量 变量用于存储在计算机程序中引用和操作的信息.它们还提供了一种用描述性名称标记数据的方法,这样我们的程序就能更清晰地被读者和我们自己理解.将变量 ...
- 自学Python之路
自学Python之路[第一回]:初识Python 1.1 自学Python1.1-简介 1.2 自学Python1.2-环境的搭建:Pycharm及python安装详细教程 1.3 ...
- 自学Python之路-Python核心编程
自学Python之路-Python核心编程 自学Python之路[第六回]:Python模块 6.1 自学Python6.1-模块简介 6.2 自学Python6.2-类.模块.包 ...
- 自学Python之路-Python基础+模块+面向对象+函数
自学Python之路-Python基础+模块+面向对象+函数 自学Python之路[第一回]:初识Python 1.1 自学Python1.1-简介 1.2 自学Python1.2-环境的 ...
- 自学Python之路-django
自学Python之路-django 自学Python之路[第一回]:1.11.2 1.3
随机推荐
- Java中“==”、“compareTo()”和“equals()”的区别
在比较两个对象或者数据大小的时候,经常会用到==.compareTo()和equals(),尤其是在接入了Comparable接口后重写compareTo方法等场景,所以我们来理一下这三个的区别. 1 ...
- BZOJ 2096: [Poi2010]Pilots 单调队列
Code: #include<bits/stdc++.h> #define maxn 4000000 using namespace std; void setIO(string s) { ...
- ajax post 请求报错Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' heade
jquery ajax跨域请求,webapi webconfig配置 前台代码(放了一部分) function CheckIn(roomno) { $.ajax({ url: 'https://www ...
- git 的简单使用(3)
Git鼓励大量使用分支: 查看分支:git branch 创建分支:git branch <name> 切换分支:git checkout <name> 创建+切换分支:git ...
- 小白神器 - 一篇博客学会HTML
小白神器 - 一篇博客学会HTML 一. 简介 1. HTML 定义 htyper text markup language 即超文本标记语言. 超文本: 就是指页面内可以包含图片.链接,甚至音乐. ...
- BZOJ 1641 USACO 2007 Nov. Cow Hurdles 奶牛跨栏
[题解] 弗洛伊德.更新距离的时候把$f[i][j]=min(f[i][j],f[i][k]+f[k][j])$改为$f[i][j]=min(f[i][j],max(f[i][k],f[k][j])) ...
- linux的ulimit各种限制之深入分析
一般可以通过ulimit命令或编辑/etc/security/limits.conf重新加载的方式使之生效 通过ulimit比较直接,但只在当前的session有效,limits.conf中可以根据用 ...
- 51nod——T1267 4个数和为0
https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1267 题目描述 给出N个整数,你来判断一下是否能够选出4个数,他们的和 ...
- Java多线程之如何确定线程数
关于多线程的线程数的确定,最近研读过几篇paper,在此做一下笔记,方便使用时翻看. 1.<Java 虚拟机并发编程>中介绍 就是说:线程数 = CPU的核心数 * (1 - 阻塞系数) ...
- Spring MVC-视图解析器(View Resolverr)-内部资源视图解析器(Internal Resource View Resolver)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_internalresourceviewresolver.htm 说明:示例基于S ...