Python基础1
本节内容
- Python介绍
- Python 2 or 3?
- 安装
- Hello World程序
- 变量
- 字符编码
- 用户输入
- 模块初识
- .pyc是个什么鬼?
- 数据类型初识
- 数据运算
- 表达式if ...else语句
- 表达式for循环、break and continue
- 表达式while循环
一、Python介绍
python是一门动态解释性的强类型定义语言。
二、强烈建议Python3
三、安装(略)
四、Hello World程序
创建一个文件叫hello.py,并输入
1 print("Hello World!")
然后执行命令:python hello.py,输出
1 Hello World!
五、变量
声明变量
1 # Author:Roc Wang 2 3 name = "Roc Wang"
上述代码声明了一个变量,变量名为:name,变量name的值为:"Roc wang"
变量定义的规则:
-
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
- ['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']
变量的赋值
name = "Roc Wang" name2 = name print("My name is ",name,name2) name = "XM Zhang" print("What is the value of name2 now?")
六、字符编码
ASCII --> GB2312 --> GBK --> GB18030 --> Unicode --> UTF-8
1 # Author:Roc Wang 2 # -*- coding: utf-8 -*- 3 4 #用python2执行时会报错,改正:添加# -*- coding: utf-8 -*-即可,python3不需添加即可执行。 5 print("你好,世界")
注释
单行注释:# 被注释内容
多行注释:"""被注释内容"""
七、用户输入
# Author:Roc Wang name = input("name:") # raw_input 2.x input 3.x # input 2.x = 不用 age = int(input("age:"))#integer 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)
输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
1 # Author:Roc Wang 2 import getpass 3 4 _username = "roc" 5 _password = "abc123" 6 username = input("username:") 7 #特别注意:PyCharm中无法使用,需要到解释器中执行 8 #password = getpass.getpass("password:") 9 password = input("password:") 10 11 if _username == username and _password == password: 12 print("Welcome user {name} login ...".format(name=username)) 13 else: 14 print("Invalid username or password")
八、模块初识
九、.pyc是个什么鬼?
十、数据类型初识
1、数字 --> int(整型)、long(长整型)、float(浮点型)、complex(复数)
2、布尔值 --> 真或假、1或0
3、字符串 --> "Hello World!"
字符串格式化输出
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)
PS:字符串是%s;整数是%d;浮点数是%f
4、列表
5、元组(不可变列表)
6、字典(无序)
十一、数据运算
算数预算:+、-、*、/、%、**、//
比较运算:==、!=、<>、>、<、>=、<=
赋值运算:=、+=、-=、*=、/=、%=、**=、//=
逻辑运算:and、or、not
成员运算:in、not in
身份运算:is、is not
位运算:&、|、^、~、<<、>>
十二、表达式if ...else语句
场景一、用户登录验证
# Author:Roc Wang import getpass _username = "roc" _password = "abc123" username = input("username:") #特别注意:PyCharm中无法使用,需要到解释器中执行 #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")
场景二、猜年龄游戏
age_of_oldboy = 56 guess_age = int(input("guess age:")) if guess_age == age_of_oldboy : print("yes,you got it.") elif guess_age >age_of_oldboy : print("think smaller...") else: print("think bigger!")
十三、表达式for循环
最简单的循环10次
# Author:Roc Wang for i in range(10): print("loop:", i )
需求一:还是上面的程序,但是遇到小于5的循环次数就不走了,直接跳入下一次循环
for i in range(10): if i<5: continue #不往下走了,直接进入下一次loop print("loop:", i )
需求二:还是上面的程序,但是遇到大于5的循环次数就不走了,直接退出
for i in range(10): if i>5: break #不往下走了,直接跳出整个loop print("loop:", i )
十四、表达式while循环
有一种循环叫做传说中的死循环,无解。
死循环代码
count = 0 while True: print("死了都要爱...",count) count +=1
其实大家都不想死,还是活着好好爱
上面的死循环代码循环10000次就放手吧
count = 0 while True: print("死了都要爱...",count) count +=1 if count == 10000: print("如果你真的需要什么理由,一万个够不够...") break
回到上面for 循环的例子,如何实现让用户不断的猜年龄,但只给最多3次机会,再猜不对就退出程序。
# Author:Roc Wang age_of_oldboy = 56 count = 0 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: continue_confirm = input("do you want to keep guessing..?") if continue_confirm != "n": count = 0 #else: # print("you have tried too many times...fuck off")
浙公网安备 33010602011771号