本帖最后由 我是色色 于 2017-12-19 10:40 编辑
一:变量 变量定义的规则 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的内置函数作为变量名 举个例子:现在用内置函数sum求和 [AppleScript] 纯文本查看 复制代码 print(sum([11,22,33])) //求11+22+33的和,结果输出自然是66
而此时我做如下操作: [AppleScript] 纯文本查看 复制代码 sum=123 //我将sum作为变量名,并给他赋值123
print(sum([11,22,33])) //再求11+22+33的和
再次执行此程序会发现程序报错“TypeError: 'int' object is not callable”,这是因为先将sum赋值了123,再让它进行求和,就会报类型错误,所以最好不要用内置函数作为变量名使用 声明变量及赋值[AppleScript] 纯文本查看 复制代码 #!/usr/bin/env python
# *-* coding:utf-8 *-*
name="czp"
声明了一个变量name,并给他赋值为“czp”。变量就可以理解为一个昵称,来代指在内存中某个地址中的内容 二:用户输入 input:永远等待,直到用户输入了一个值,该程序才会继续执行下午,并将输入的值赋值给某一个变量,这么说可能不太能理解,下面我写一个简单的应用场景: 应用场景:提示用户输入用户名和密码,输入正确输出“Welcome”,输入错误输出“Failed”[AppleScript] 纯文本查看 复制代码 复制代码
user="root" //首先在循环外面定义用户名及密码
password="root"
user1=input("请输入您的用户名:") //使用input提示用户输入,如果不输入,程序将停滞,不继续向下执行
password1=input("请输入您的登陆密码:")
if user1==user and password1==password: //使用if..else条件语句将用户输入的用户名密码与自己定义的用户名密码进行比对
print("Welcome")
else:
print("Failed")
复制代码
在这里提前说一个知识点,按上述代码编写方式,输入的密码是明文的,这里很多人会想要使自己的密码加密,这时需要导入一个getpass模块 [AppleScript] 纯文本查看 复制代码 复制代码
#导入getpass模块
import getpass
user="root"
password="root"
user1=input("请输入您的用户名:")
#在这里使用getpass.getpass代替input,提示用户输入密码,此时输入的密码显示就是密文
password1=getpass.getpass("请输入您的登陆密码:")
if user1==user and password1==password:
print("Welcome")
else:
print("Failed")
复制代码
但这种形式在pycharm解释器中会卡住不运行,在自带的python IDE是可以的,方法是正确的,但为什么出现这种BUG,说法很多,不多解释,这里只要记住这个问题就行了 三:if条件语句 if基本语句[AppleScript] 纯文本查看 复制代码 复制代码
if条件:
内部代码块..
else:
内部代码块..
..........
复制代码
例子参考上一节用户输入的第一个例子,就是一个最简单的if基本语句的使用 if条件语句可以嵌套[AppleScript] 纯文本查看 复制代码 复制代码
if条件1:
if条件2:
内部代码块..
else:
内部代码块..
else:
内部代码块..
..........
复制代码
在写if嵌套语句的时候一定要注意代码的缩进问题,所以初步学习的时候不建议加多个嵌套,否则很容易出现逻辑混乱甚至导致程序运行出错 应用场景:1)输入用户名,判断该用户名是否正确,如果正确,则进入该用户,否则输出“Invaild user” 2)如果用户名正确,提示用户输入密码,如果密码输入正确,输出“Welcome”,否则输出“Faild”[AppleScript] 纯文本查看 复制代码 复制代码
user="czp"
user1=input("请输入您的用户名:")
if user1==user:
n1=input("请输入你的密码:")
if n1=="1": //“==”是两个值比较,“=”是赋值,这一点一定要清楚
print("Welcome")
else:
print("Faild")
else:
print("Invalid user")
复制代码
注:一定要注意代码的缩进问题。 if..elif...else语句:[AppleScript] 纯文本查看 复制代码 复制代码
if条件1:
pass //pass指代空代码
内部代码块...
elif条件2:
内部代码块
else:
内部代码块..
复制代码
此种场景应用与较多条件的判断,elif..可以多次使用。 四:while循环语句 1.基本while循环[AppleScript] 纯文本查看 复制代码 while 条件:
# 循环体
# 如果条件为真,那么循环体则执行
# 如果条件为假,那么循环体不执行
2.break[AppleScript] 纯文本查看 复制代码 while True:
print "111"
break //当输入break时,就退出所有循环
print "222"
3.continue[AppleScript] 纯文本查看 复制代码 while True:
print "111"
continue //当输入continue,退出当前循环,继续下一次的循环
print "222"
continue和break的区别就是:虽然都是退出当前循环,continue是继续执行程序,也就是说程序依旧在运行,而break就是直接跳出程序,程序终止。 五:练习 1)使用while循环输出 1 2 3 4 5 6 8 9 10(注意:没有7) 2)求1-100的所有数的和 3)输出 1-100 内的所有奇数 4)求1-2+3-4+5 ... 99的所有数的和 3)用户登陆,登陆成功提示Welcome,登陆失败提示Failed,只有三次机会,三次输入错误,自动退出程序 注:以上5道题会在下一边文章开篇做详细讲解。 |