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