1、 变量

  Python中的变量概念很好理解,变量其实就是某个数值的“名字”。

  变量定义的规则:

  (1)   只能由数字、字母、下划线组成(不能以数字开头

  (2)   不能使用关键字作为变量名

  ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise',   'return', 'try', 'while', 'with', 'yield']  ,这些关键字作为了解,不需要死记,当使用Python解释器编写代码的过程中,如果误用关键字作为变量名,解释器会自动标红该变量名以做提示。

  (3)   最好不要使用Pyhton的内置函数作为变量名

  在Python中,有很多内置函数,它们的用法和功能已经写好,用的时候直接调用就可以了,如果将变量与内置函数定义成同一个名字,难免会出现一些意想不到的错误。看下面这个例子:

 print(sum([1,2,3]))     //调用内置函数sum,求和
运行结果:
6  

 如果将sum作为变量名并赋予了一个其它的值,在用sum内置函数进行求和操作的话:

 sum = 123              //将sum作为变量名,并给它赋值为123
print(sum([11,22])) //调用内置函数sum,求和
运行结果:
程序报错:TypeError: 'int' object is not callable

  再次执行此程序会发现程序报错了:“TypeError: 'int' object is not callable”,这是因为将sum作为变量名并赋值了之后,下面的程序在调用sum的时候会先找到该变量而不是先去找Python的内置函数sum(),所以最好不要用内置函数作为变量名使用。

  在上面这个代码中,类似于sum = 123 形式的 变量名 = 值这样的操作称为赋值,也可以理解为:将某个值绑定到了某个变量上,变量在被赋值后,就可以在表达式中使用该变量,变量可以理解为一个昵称,来代指在内存中某个地址中的内容

2、 用户输入

  程序是为了满足人们的需求来供人使用的,当一个用户在调用程序的时候,赋值给某个变量的值是不确定的,为了将无法预测的值赋值给指定的变量以便后面的程序可以调用该变量,就要用到input()函数。

  input():永远等待,直到用户输入了一个值,该程序才会继续执行,并将输入的值赋值给某一个变量。

  以大家最熟悉的用户登陆过程为例:提示用户输入用户名和密码,如果输入正确输出“Welcome”,输入错误输出“Failed”,代码如下:

  如上述的代码实例,通过input()函数获取到了用户的实时输入。

  但还存在一个小问题:通过上面的代码,用户在输入密码的时候是明文的,如果想设置密码为密文,就需要getpass模块。模块的概念稍后会讲到。  

 username = "root"         //定义正确的用户名和密码
password = "root"
"""调用input()函数提示用户输入,输入的值赋值给Personname和Personpasswd,如果没有输入,程序将停滞,不会继续向下执行"""
Personname = input("Please enter your username:")
Personpasswd = input("Please enter your password:")
"""判断用户输入的用户名和密码是否与正确的用户名和密码相同"""
if Personname == username and Personpasswd == password:
print("Welcome")
else:
print("Failed")

3、 模块导入

  Python通过导入模块来扩展自己的功能。导入模块通过import关键字,主要有以下4种方式:

 import os                   //导入os模块
from os import mkdir //导入os模块中的mkdir函数
from os import mkdir,rmdir //导入os模块中的mkdir,rmdir函数,用逗号分隔
from os import * //导入os模块中的一切

  还有一种重命名的方法,如果需要导入的两个模块中都有mkdir方法,可以使用import+模块名+as+自定义模块名的方式来进行区分。

 from moudle1 import mkdir as test1   //将moudle1模块中的mkdir函数重命名为test1
from moudle2 import mkdir as test2 //将moudle2模块中的mkdir函数重命名为test2

  通过test1.xxx和test2.xxx的方式调用。

4、 条件语句

  • if 语句

  if 条件语句用来进行判断,如下所示为if条件语句的基本结构:

 if条件:
内部代码块

  通过 if+表达式的方式来对所写的表达式进行真假判断,如果判定为真,执行后面的代码块。如果为假,该代码块不会被执行。

  • if..else语句

  当进行if条件判断时,如果判定为真和判定为假都有不同的输出,就需要使用if..else语句。

 if 条件:
内部代码块1
else:
内部代码块2

  如上的代码结构所示,通过if ..else语句如果判定的条件为真,就执行内部代码块1,否则会执行内部代码块2  

  • if..elif..else语句

  如果对于多种条件的判定,都会有不同的返回结果,使用if..eles语句很显然是不行的,它仅仅能返回真或假两种结果,所以为了适用于多种判定,就需要使用if..elif..else语句,如下所示:

 if 条件:
内部代码块1
elif 条件:
内部代码块2
……
else:
内部代码块3

  可以在中间插入无数多个elif条件来对多种判定条件进行判断,并得到相应的返回结果

  • if条件语句的嵌套
 if条件1:
    if条件2:
      内部代码块1
    else:
      内部代码块2
  else:
    内部代码块3

  在写if嵌套语句的时候一定要注意代码的缩进问题,所以初步学习的时候不建议加多个嵌套,否则很容易出现逻辑混乱甚至导致程序运行出错。

  下面通过一个简单的小例子来演示下if语句的用法

  应用场景:

  (1)   输入用户名,判断该用户名是否正确,如果正确,则进入该用户,否则输出“Username does not exist”

  (2)   如果用户名正确,提示用户输入密码,如果密码输入正确,输出“welcome”,否则输出“password input error”

 username = "czp"
password = ""
login_user = input("Please enter your username:")
if login_user == username:
login_passwd = input("Please enter your password:")
if login_passwd == password:
print("welcome")
else:
print("password input error")
else:
print("Username does not exist")

5、 循环语句

  上面写到的用户登陆例子中,程序执行一次就会终止了,在很多时候,我们登陆的时候,难免会输错密码或忘记密码,输错一次就不允许再次输入,就很不符合实际的应用场景,如果想让其重复执行,就需要用到while循环语句。

  • 基本while循环
 while 条件:
# 循环体
# 如果条件为真,那么循环体则执行
# 如果条件为假,那么循环体不执行

  当有一个需求是打印0-10的时候,可以用这样的方式:

 print(0)
print(1)
………
print(10)

  如果用循环的话,就更方便了

 i=0
while i < 11:
print(i)
i+=1
  • break
 while True:
print ""
break //当输入break时,就退出所有循环
print ""
  • continue
 while True:
print ""
continue //当输入continue,退出当前循环,继续下一次的循环
print ""

  continue和break的区别就是:虽然都是退出当前循环,continue是继续执行程序,也就是说程序依旧在运行,而break就是直接跳出程序,程序终止。

6、 if/while 语句练习

  1)使用while循环输出 1 2 3 4 5 6 8 9 10(注意:没有7)

 n = 0
while n < 11:
if n ==7:
pass
else:
print(n)
n+=1

  2) 求1-100的所有数的和

 n = 1
s = 0
while n < 101:
s += n
n +=1
print(s)

  3)输出 1-100 内的所有奇数

 n = 1
while n < 101:
if n%2 != 0:
print(n)
n+=1

  4)求1-2+3-4+5 ... 99的所有数的和

 n = 1
s = 0
while n < 101:
if n%2 != 0:
s = s + n
else:
s = s - n
n+=1
print(s)

  5) 用户登陆,登陆成功提示Welcome,登陆失败提示Failed,只有三次机会,三次输入错误,自动退出程序

 user="czp"
n=0
while n<3:
user1=input("请输入您的用户名:")
if user1==user:
print("Welcome")
break
else:
print("Failed")
n+=1

Pyhton编程(二)之变量、用户输入及条件语句的更多相关文章

  1. GO语言的基本语法之变量,常量,条件语句,循环语句

    GO语言的基本语法之变量,常量,条件语句,循环语句 作为慕课网得笔记自己看 定义变量: 使用var关键字 var a, b, C bool var s1, s2 string = "hell ...

  2. 第七章 用户输入和while语句

    大多数编程都旨在解决最终用户的问题,为此通常需要从用户那里获取一些信息.例如,假设有人要判断自己是否到了投票的年龄,要编写回答这个问题的程序,就需要知道用户的年龄,这样才能给出答案.因此,这种程序需要 ...

  3. Python基础-1 python由来 Python安装入门 注释 pyc文件 python变量 获取用户输入 流程控制if while

    1.Python由来 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚 ...

  4. python学习道路(day1note)(变量,注释,用户输入,格式化输出,if,while,for循环并扩展练习)

    python是一门动态解释性的强类型定义语言,其应用范围非常之广 1:进入python语言 #!/usr/bin/env python #_*_coding:utf-8_*_ print(" ...

  5. c编程:提示用户输入一个0—9的数字进行猜测电脑产生的随机数。一共有三次机会。

    // //  main.c //  使用c语言进行编程: 题目:由电脑生成一个由0-9之间的随机数,提示用户也输入一个数字进行猜测.当猜测三次仍不中的时候结束程序. 编译环境:Xcode6.3 特别介 ...

  6. day1(变量、常量、注释、用户输入、数据类型)

    一.变量 name = "SmallNine" 等号前面是变量名(标识符),等号后面是变量值 变量的主要作用:就是把程序运算的中间结果临时存到内存里,已备后面的代码继续调用. 变量 ...

  7. Python编程从入门到实践笔记——用户输入和while循环

    Python编程从入门到实践笔记——用户输入和while循环 #coding=utf-8 #函数input()让程序暂停运行,等待用户输入一些文本.得到用户的输入以后将其存储在一个变量中,方便后续使用 ...

  8. Python之路 day1 基础1 变量 for while 用户输入

    一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...

  9. shell编程中用户输入处理(shell 04)

    shell编程中用户输入处理1.命令行参数2.脚本运行时获取输入 命令行参数 通过空格来进行分割的位置参数 :$+position $0,$1,$2 ....$0 :程序名$1,$2,$3 ... $ ...

随机推荐

  1. 【1414软工助教】团队作业4——第一次项目冲刺(Alpha版本) 得分榜

    题目 团队作业4--第一次项目冲刺(Alpha版本) 作业提交情况情况 所有团队都在规定时间内完成了七次冲刺. 往期成绩 个人作业1:四则运算控制台 结对项目1:GUI 个人作业2:案例分析 结对项目 ...

  2. Linux帮助手册(man)

    Linux的帮助文档 在我们使用Linux的过程中,都会遇到这样那样的问题,一般我们在计算机能连上网的情况下会进行百度或Google解决问题,但是并不是所有文题都能在网上很快得到答案.万一我们是在没有 ...

  3. [3] 微信公众号开发 - 结合UEditor实现图文消息群发功能

    0.写在前面的话 如何实现微信平台后台管理中的,图文消息发送功能? 大概的过程如下: 通过类似表单的形式,将文章各部分内容提交到后台,封装成一个实体类,并持久化到数据库中 需要推送的时候,将不同的文章 ...

  4. IDEA运行编译后配置文件无法找到,或配置文件修改后无效的问题

    1.触发事件 今天正好在学习log4j,为了测试其配置文件log4j.properties中的各种配置,进行了频繁修改和程序启动以确认效果,因为是使用的IDEA建立的Web项目,接着问题就来了,配置文 ...

  5. Oracle-一个中文汉字占几个字节?

    Oracle 一个中文汉字占用几个字节 Oracle 一个中文汉字 占用几个字节,要根据Oracle中字符集编码决定!!! 1. 如果定义为VARCHAR2(32 CHAR),那么该列最多就可以存储3 ...

  6. 如何在Oracle官网下载历史版本JDK

    打开Oracle官网,准备下载java JDK(下载时需要使用注册用户登陆,可以免费注册) 官网地址:http://www.oracle.com/ 2 鼠标悬停Downloads,会出现相关内容,如下 ...

  7. jstl-初步认知

    JSTL是java提供的JSP标签库 1,在项目中加入 jsf-api.jar jsf-impl.jar jstl-1.2.jar 三个包 2, 如何在jsp页面引入标签库 使用 <@tagli ...

  8. thinkphp5.0无限极分类及格式化输出

    首先我们来看数据表 从上图中可以发现,中国下有贵州,北京两个子节点,而北京有天安门一个子节点,纽约的子节点是"纽约的子类". 从pid为0看出,中国和纽约是顶级节点. 因为贵州的p ...

  9. 谈javascript变量声明

    之前的面试中遇到过一道面试题 var a =10;(function(){ console.log(a); var a =20;})() 短短5行代码log的结果是什么? 如果把var a = 20; ...

  10. 编号中的数学_KEY

    题目描述: 从美国州际高速公路建筑者那里,奶牛们引进了一种路径编号系统,来给牧场之间的道 路编号.他们已经把 N(1<=N<=25)个牧场,用 1 到 N 的整数编号.现在他们需要将牧场间 ...