参考博文连接:https://www.cnblogs.com/alex3714/articles/5465198.html
一、Python介绍
python是一门动态解释性的强类型定义语言
优点:
- 简单易懂,入门容易,将来深入下去,可以编写那些非常非常复杂的程序。
- 开发效率非常高。
- 高级语言
- 可移植性
- 可扩展性
- 可嵌入性
缺点:
- 速度慢
- 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的
- 线程不能利用多CPU问题
二、Python解释器
CPython、IPython、PyPy、IronPython和Jython等,其中CPython是使用最广的Python解释器
三、变量\字符编码
变量定义的规则:
- 变量名只能是字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
- ['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']
示例:
# Author:daemon chai # -*- coding:utf-8 -*- name="中国" print(name)
四、字符编码
- 主要了解ASCII,Unicode,utf-8,gbk;
- 在Python2.xx版本中,默认运行的是ASCII编码,Python3中是Unicode;
- 在Unicode编码中一个英文字符用一字节表示,中文字符用3个字节表示,ASCII不能表示中文;
- ASCII,Unicode,utf-8,gbk相互之间的转换可以通过encode和decode实现。
五、注释
- 当前行注视:# 被注释内容
- 多行注释:""" 被注释内容 """
六、用户输入和变量表示
用户输入:a=input(“提示信息”)
变量输出:print(a)
示例1:
# Author:czk # -*- coding:utf-8 -*- name=input("username:") age=int(input("Age:")) print(type(age),type(str(age))) job=input("Job:") salary=input("salary:")
示例2
format格式化输出代码如下:
info=''' ------- info of {_name} ------- Name:{_name} Age:{_age} Job:{_job} salary:{_salary} '''.format(_name=name,_age=age,_job=job,_salary=salary) print(info)
info2=''' ------- info of {0} ------- Name:{0} Age:{1} Job:{2} salary:{3} '''.format(name,age,job,salary) print(info2)
示例3
info3=''' ------- info of %s ------- Name:%s Age:%d Job:%s salary:%s ''' %(name,name,age,job,salary) print(info3)
六、实操
表达式和判断语句运用的三级菜单作业代码如下:
# Author:daemon chai date={ "中国":{ "湖北":{ "武汉":{"黄鹤楼","司门口"}, "神农架": {"野人1","野人2"}, "黄石": {"黄石人民热情","黄石人民好客"}, }, "广东":{ "惠州":{"十里银滩","西湖"}, "东莞": {"莞式服务","去东莞打工"}, "广州": {"越秀广场","珠江夜游"}, }, "湖南":{ "长沙":{"湖南卫视","天天向上"}, "张家界": {"天门山","溶洞"}, "凤凰古镇": {"湘西风情","旅游景点"}, }, }, "美洲":{ "美国":{ "纽约":{"华尔街","司门口"}, "洛杉矶": {"洛杉矶大道","华人街"}, "拉斯维加斯": {"赌城","赌城2"}, }, "巴西":{ "足球": {"内马尔", "罗纳尔多"}, "桑巴舞": {"长长的沙滩", "美女"}, "黑帮": {"首都黑帮", "边境黑帮"}, }, "墨西哥":{ "足球111": {"没有听说", "罗纳尔多不是的"}, "桑巴舞222": {"长长的沙滩", "美女有吗"}, "黑帮333": {"首都黑帮11", "边境黑帮222"}, }, }, "欧洲":{ "英国": { "足球": {"3454", "34332"}, "伦敦": {"伦敦号", "123"}, "黑帮333": {"首都黑帮11", "边境黑帮222"}, }, "法国": { "纽约":{"华尔街","司门口"}, "洛杉矶": {"洛杉矶大道","华人街"}, "拉斯维加斯": {"赌城","赌城2"}, }, "德国": { "德国城市1":{"德国城市1描述","德国城市1描述002"}, "德国城市2": {"德国城市2描述","德国城市2描述"}, "德国城市3": {"德国城市3描述","德国城市3描述"}, }, }, }
nul_flag =not False while nul_flag : for i in date : print(i) choice1=input("请选择一级城市") if choice1 in date: while nul_flag: for i in date[choice1] : print(i) choice2=input("请选择二级城市") if choice2 in date[choice1] : while nul_flag : for i in date[choice1][choice2]: print(i) choice3=input("请输入三级城市") if choice3 in date[choice1][choice2] : while nul_flag: for i in date[choice1][choice2][choice3]: print(i) choice4=input("最后一层,请选择返回或者退出") if choice4 =='b' : break elif choice4 =='q': nul_flag=False else: print("输入有误,请重新输入") elif choice3 =='q': nul_flag= False elif choice3=='b': break else: print("输入有误,请重新输入") elif choice2 =='q': nul_flag=False elif choice2=='b': break else: print("输入有误,请重新输入") elif choice1 =='q' : nul_flag = False elif choice1 =='b': print("已经是最上级菜单,请按q退出") else: print("请重新输入")