变量定义规则
数据类型
双分支 if else
多分支结构 :猜年龄案例
while 循环
dead loop
break & continue
while else 用户
变量定义规则
数字、字母、下划线 任意组合 但不能以数字开头 ,且程序包含的单词无法作为变量名
变量的写法
驼峰体
AgeOfOldboy = 35
下划线(官方推荐)
age_of_oldboy = 35
常量定义规则,一般采用全大写定义常量。
AGE_OF_OLDBOY = 35
数据类型
Python能自动识别数据类型
可通过命令type查看
>>> age=25
>>> type(age)
<class 'int'>
>>> name="k"
>>> type(name)
<class 'str'>
>>>
数据类型-数字类型
int 整数 取值范围 -2**31~2**31 64位机器取值为-2**63~2**63
long 长整数 无定义范围 3.0后 无此类型
float浮点型 简单理解为小数
数据类型 -字符串
定义时加引号就认为是字符串,单引号、双引号 、3引号都可以 ,单引号双引号无区别,3引号一般定义一段话(多行)
数据类型-布尔值
true & fault
双分支 if else
user = 'kwang'
passwd = 'dellsc8888'
username = input("username:")
password = input("password:")
if user == username and passwd == password:
print("Wellcom login ....")
else:
print("username or password is not correct")
多分支结构 :分数案例
mark = int(input("please input you mark:"))
if mark > 100:
print("max is 100!!!")
elif mark >= 90 :
print("your result is A ")
elif mark >= 80 :
print("your result is B ")
elif mark >= 60 :
print("your result is C")
elif mark >= 40 :
print("your result is D")
elif mark < 0 :
print("min is 0 !!!")
else :
print("your result is E")
while 循环
count = 0
while count <= 100 :
print("loop",count)
count += 1
while 案例 循环打印1--100 ,第50此不打印值 ,60-80次打印对应值的平方
count = 0
while count <= 100:
if count == 50:
pass #if 语句不做操作 使用pass
elif count >= 60 and count <=80 :
print(count**2)
else :
print("loop",count)
count +=1
print("loop is ended")
死循环 条件永远满足 循环下去 dead loop
count = 0
while True:
print("play", count)
count += 1
break & continue
break 跳出整个循环不在进行
continue 跳出单个循环
while else用户
当循环正常结束 当未使用break强制退出后
count = 0
while count <= 5:
count += 1
print("loop",count)
else:
print("这个循环正常结束啦")
print("---------------out of while loop ------------")
猜年龄案例
print("can you guess my age?:")
age = 35
x = 0
for i in range(10):
if x < 3 : #限制一个猜的次数
guess_num = int(input("please in put a num:"))
if age == guess_num:
print("gongxigongxi you got it ")
break
elif age < guess_num:
print("it is bigger")
else:
print("it is smaller")
else : # 超出3次后提示是否继续
input_confirm = input("continue,y/n:")
if input_confirm == "y":
x=0 #此时x等于3,在此重新赋值。n退出
continue #continue 可以实现循环到此处时跳出当次循环。
else:
print("byebye")
break
x=x+1 # 等于 “x += 1” 实现x 随 循环增加
格式化输出信息,案例
name = input('input your name:') #注意 input 默认任何值均为字符串
age = input('input your age:')
job = input('input your job')
msg='''
Infomation of user %s:
----------------------
Name: %s
Age : %d
Job : %s
-------END------------
''' %(name,name,age,job)
print(msg)
age项,如执行时报错需要输入数字,则使用int()来做转换,将age字符形式转换为数字,%s(string)为字符,除此之外还有%d(digth)为数字,%f(float)为小数 。
上栗可强制某些变量的数据类型
name = input('input your name:')
age = int(input('input your age:'))# 将inptu的值转为数字类型
job = input('input your job')
msg='''
Infomation of user %s:
----------------------
Name: %s
Age : %d #强制输入数字
Job : %s
-------END------------
''' %(name,name,age,job)
print(msg)
三个引号中间外一个整体,此案例赋值msg ,引号后的%内容代表前面出现过的4个%为哪些变量
====
常用模块
import getpass
username = input("username:")
password = getpass.getpass("password:")
print(username,password)
隐藏输入getpass.getpass 2.7有效
import os
os.system('df')
os.mkdir('yourDir')
cmd_res = os.popen("df -h").read()
导入os模块 ,os模块可执行系统命令,此例df可输出磁盘信息 但如果用来给cmd_res赋值,则cmd_res执行赋值0或其他数字(执行结果) 要想赋值实际的df值则要用上面的os.popen格式。
import sys
print(sys.path)
#'/usr/lib/python2.7/dist-packages' 自己写的模块
导入系统模块 输出路径名 ,系统默认选择的模块引入路径 。一般自己写的模块放入dist-packages ,记住一点模块先查找当前目录 。
====
数组的应用
name = [ "wangkai","wangkai2","wangkai3","wangkai4","wangkai5","wangkai6","wangkai7","wangkai8","wangkai9"]
print(name[0]) #输出name第一个值
wangkai
print(name[0:4]) #输出name第1至3的值
['wangkai', 'wangkai2', 'wangkai3', 'wangkai4']
print(name[-1]) #输出name最后一个值
wangkai9
print(name[-5:]) #输出name倒数第5个值以后的所有值
['wangkai5', 'wangkai6', 'wangkai7', 'wangkai8', 'wangkai9']
print(name[2:4]) # 输出name第3-4的值
['wangkai3', 'wangkai4']
print(name[2:4][0]) #输出name第3-4的值后再取第一个值
wangkai3
print(name[2:4][0][2]) #在上面取值的基础上再取第3个值
n
name[1] = "king" #改变第2个name的值
print(name[1])
['wangkai', 'king', 'wangkai3', 'wangkai4', 'wangkai5', 'wangkai6', 'wangkai7', 'wangkai8', 'wangkai9']
name.insert(2,"lalala") #插入一个值到第三个位置
print(name[:])
['wangkai', 'king', 'lalala', 'wangkai3', 'wangkai4', 'wangkai5', 'wangkai6', 'wangkai7', 'wangkai8', 'wangkai9']
name.append("alex") #最后一个位置添加值
print(name[:])
['wangkai', 'king', 'lalala', 'wangkai3', 'wangkai4', 'wangkai5', 'wangkai6', 'wangkai7', 'wangkai8', 'wangkai9', 'alex']
name.remove("wangkai3") #删除赋值 直接删除
print(name[:])
['wangkai', 'king', 'lalala', 'wangkai4', 'wangkai5', 'wangkai6', 'wangkai7', 'wangkai8', 'wangkai9', 'alex']
转载于:https://blog.51cto.com/317487/2151265