What is variables?

  • 一段命名的内存空间
  • 变量即在程序运行过程中,它的值是允许改变的量

1、变量命名:

合法:

 显式、通俗易懂。
nums_of_jay_gf = 19
NumsOfJayGF = 19 #首字母大写,驼峰式写法

不合法:

names-of-alex-gf = 19   # 变量名不能以 -  分隔
5name = 19 # 变量名不能以数字开头
!name # 变量名不能包含特殊字符
ame of teacher = # 变量名间不能有空格
# 有些关键字是 Python 自己保留的,也不能被当做变量名

2、变量引用:

a = 3
b = a # 此时 b 引用了 a 是指向 a 引用的内存地址,而不是指向 a 的值
a = 5 # a 此时开辟一块内存空间去存储新的值 5
# a 的值变化后,对 b 没有任何影响
id(a),id(b) # 查看 a 与 b 引用的 Python 内存地址
(137220896,137220928) # 此内存地址并不是物理内存地址,只是 Python 自己的地址。

Python 靠 Python 解释器与操作系统协调工作,Python 解释器会从物理内存中申请一大段空间,提供给 Python 程序来使用,然后又将这段空间分配给 Python 程序。

销毁其中一个变量,并不会影响另一个变量的使用。

3、用户交互:

 name = input("Please input you name:")
print (name) # 此时用户输入的值就会被保存在 name 这个变量中

4、Python 的强制缩进:

Python 需要靠缩进来判断语句的作用域,不写缩进解释器无法分辨作用域。

同一级别代码,缩进必须保持一致。

name = input("Please input name:")
if name == "xiaoming":    # 此处 : 至下一次缩进位置为一段
print ("You name is XiaoMing")
elif name == "xiaohei": # 此处 : 至下一次缩进位置为一段
print ("You name is XiaoHei")
else: # 此处 : 至下一次缩进位置为一段
print ("Hello stranger")

5、循环:

5.1 while 循环:

number = int(input("Please input number range:1 to 10:"))  # python 3.0 中将所有输入默认保存为 字符串,所以必须用 int 转换成数值才可以进行数值比较

while number < 10:   # 当 while 条件为真时进入循环
print (number)
number += 1 # 每次循环数字 + 1
if number > 8: # 大于 8 则跳出循环
break # 跳出循环
else: # 当 while 条件不成立时,执行 else:中的代码
print ("You input digit too large") # 输入的数字大于10 则提示过大

5.2 while 死循环:

digit = 0       # 设定初始值
while True: # while 条件始终为真,死循环
print (digit) # 输入 digit 每次的值
digit += 1 # 每循环一次将 digit 值 + 1
if digit > 10: # 当 digit 值大于 10 判断成立
break # 跳出循环

练习:要求用户猜数字,猜错三次后退出程序。

 lucky_num = 8
count = 0 while count < 3: # 判断错误次数是否大于 3
guess_num = int(input("Please input lucky_num:"))
if guess_num > lucky_num: # 判断输入是否大于
print ("Too large")
elif guess_num < lucky_num: # 判断输入是否小于
print ("Too small")
else: # 等于
print ("Bingo")
break # 猜对后跳出循环
count += 1 # 记录猜的次数
else: # 错误次数大于 3 时执行 else 中代码
print ("Try too many times")

5.3 for 循环:

 for i in range(3):   # range 为内置方法 会生成 0 1 2  3 个数
print (i)

练习:for 循环实现猜数字,猜错三次退出循环

for i in range(3):   # range 为内置方法,会生成 1 - 3
guess_num = int(input("Please input lucky_num:"))
if guess_num > lucky_num:
print ("Too large")
elif guess_num < lucky_num:
print ("Too small")
else:
print ("Bingo")
break
count += 1
else:
print ("Try too many times")

5.4 嵌套循环练习  实现猜数字,输入数字范围为 1 - 20,猜错三次退出循环

 lucky_num = 8
count = 0
while count < 3: # 判断输入次数
guess_num = int(input("Please input lucky_num range 1 to 20:"))
while guess_num < 20: # 判断用户输入数字是否大于 20
if guess_num > lucky_num:
print ("Too large")
break
elif guess_num < lucky_num:
print ("Too small")
break
else:
print ("Bingo")
break
else:
print ("Input range 1 to 20")
break
count += 1 # 修正次数
else:
print ("Try too many times")

Python Day 01的更多相关文章

  1. Python学习--01入门

    Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...

  2. Python网络01 原始Python服务器

    原文:Python网络01 原始Python服务器 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 之前我的Python教程中有人 ...

  3. python进阶01 面向对象、类、实例、属性封装、实例方法

    python进阶01 面向对象.类.实例.属性封装.实例方法 一.面向对象 1.什么是对象 #一切皆对象,可以简单地将“对象”理解为“某个东西” #“对象”之所以称之为对象,是因为它具有属于它自己的“ ...

  4. Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数

    Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...

  5. Python模块01/自定义模块/time模块/datetime模块/random模块

    Python模块01/自定义模块/time模块/datetime模块/random模块 内容大纲 1.自定义模块 2.time模块 3.datetime模块 4.random模块 1.自定义模块 1. ...

  6. Python面向对象01 /面向对象初识、面向对象结构、类、self、实例化对象

    Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 目录 Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 1. 面向对象初识 2. 面向 ...

  7. Python Basic 01.Basic

    01.variable ''' 변수(variable) - 자료(data)를 임시(휘발성) 저장하는 역할 - 실제 자료가 아닌 자료의 주소를 저장한다.(참조변수) ''' # 1. 변수 ...

  8. python学习-01

    1.编程语言分类: 编译型:(由编译器将代码编译成计算机识别的二进制文件)C \C++ \C#    运行速度较解释型语言快 解释型:(在运行时进行编译)python.php.sheel.ruby.j ...

  9. python 基础 01

    什么是计算机? cpu: 计算机的大脑; 读写速度 3GHZ 内存: (为了提高利用率) 缓冲硬盘和cpu 硬盘: 机械硬盘读写速度70mb/s 计算机里面读写的内容都是01代码 二进制(计算机只认二 ...

  10. Python基础--01小项目体现的基础知识

    part1:猜拳游戏 #coding=utf-8 #当有汉语时可能编译器不认识,需要定义代码 ''' 多行注释 写这个程序是为了熟悉python的基本语法 这是第一个小例子包含简单的if判断,循环和输 ...

随机推荐

  1. Windows下的Memcache安装

    Windows下的Memcache安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memca ...

  2. jQuery.is() 函数

    is() 函数 判断当前对象是否符合指定表达式 语法 $selector.is(表达式)//指定表达式 返回值 返回值为布尔型(true/false) 当当前对象包含多个元素时,只要任意元素满足指定表 ...

  3. HTTP协议的报文结构

    HTTP 有两类报文: (1) 请求报文----从客户向服务器发送请求报文,见图6-12(a). (2) 响应报文----从服务器到客户的回答,见图6-12(b). 由于 HTTP是面向文本的(tex ...

  4. linux下的nodejs安装

      linux下安装nodejs的方式: 1.源码安装 2.nvm安装 这里推荐使用nvm安装,避免下载nodejs源码:   安装步骤: 一.安装git        一般linux系统的git版本 ...

  5. spring cloud资料

    https://segmentfault.com/a/1190000006216281 http://git.oschina.net/zhou666/spring-cloud-7simple zuul ...

  6. iOS 页面间几种传值方式(属性,代理,block,单例,通知)

    第二个视图控制器如何获取第一个视图控制器的部分信息 例如 :第二个界面中的lable显示第一个界面textField中的文本 这就需要用到属性传值.block传值 那么第一个视图控制器如何获的第二个视 ...

  7. Java双循环break的用法

    break只跳出当前循环,也就是内循环,如果想跳出外循环有两种办法:1:for(int i = 0;i<9;i++){ //用两个breakfor(int j = 0;j<8;j++){b ...

  8. Android开发环境搭建(jdk+eclip+android sdk)

    在开启Android 开发之旅之前,首先要把准备工作做好---搭建开发环境 一.环境搭建: 1.Java JDK 安装 2.Eclipse 安装 3.Android SDK 安装 4.ADT安装 5. ...

  9. DataFormatString 转

    数据绑定之DataFormatString 设定BoundField的DataFormatString,通常有以下几种 DataFormatString= "{0:C}" 货币,货 ...

  10. 张艾迪(创始人): 整合全新的UIW.AD概念模式

    The World No.1 Girl :Eidyzhang The World No.1 Internet Girl :Eidyzhang AOOOiA.global Founder :Eidyzh ...