Rumah pembangunan bahagian belakang Tutorial Python python编写一个三级while的循环菜单实例

python编写一个三级while的循环菜单实例

Jul 17, 2017 pm 05:45 PM
python while kitaran

下面这篇文章介绍python是如何编写一个三级while的循环菜单的

1.定义字典,字典里面嵌套字典,内嵌字典的值为列表。

思路:

<strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>湖北省的市:字典中的</span></strong><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>定义3个字典,用于存储</span></strong><br><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>{序列-键:市名}</span></strong>
Salin selepas log masuk
shiqu_dir = {}
Salin selepas log masuk
{序列-键:县}
Salin selepas log masuk
xian_dir ={}
Salin selepas log masuk
{序列-键:街道}
Salin selepas log masuk
jiedao_dir = {}
Salin selepas log masuk
函数将序列和键一一对应。
Salin selepas log masuk
<strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>for number,key in enumerate(Hbei_map.keys())  获取序列键和市名存储到 市名字典</span></strong><br><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>用一个列表 chose = [] 来存储所选择的市--县程-街道</span></strong>
Salin selepas log masuk
<strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>chose[0],chose[1],chose[2]最后使用切片返回</span></strong><br><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>中间输入全部使用的判断方式for循环: for k,v in xxx.items():</span></strong><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>                     if input == k:</span></strong><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>让用户只能输入序列中的数字。使用判断语句:</span></strong>
Salin selepas log masuk
<strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>  if int(input) not in 字典.keys():</span></strong><br><strong><span style='font-family: "Microsoft YaHei"; font-size: 14px'>      print("您输入了非法的序列,请输入一下序列 {}".format(shiqu_list))</span></strong><br><br>
Salin selepas log masuk
# -*- coding: utf-8 -*-__author__ = 'hujianli'import sys
Hbei_map = {"武汉市":{"江岸区":["上海街","大智街","一元街","车站街","四唯街","永清街","球场街","西马街","台北街","劳动街","花桥街","后湖街","谌家矶街"],         "硚口区":["易家墩街道","韩家墩街道","宗关街道","汉水桥街道","宝丰街道","荣华街道","崇仁街道","汉中街道"],         "武昌区":["积玉桥街道","杨园街道","徐家棚街道","新河街道"]
    },"荆州市":{"沙市区":["黄石港","崇文街道","解放路街道"],"荆州区":["城南街道","西城街道","东城街道","马山镇","川店镇"],"松滋市":["新江口镇","南海镇","八宝镇","陈店镇"],"公安县":["斗湖堤镇","埠河镇","杨家厂镇","斑竹垱镇"],"监利县":["容城镇","白螺镇","朱河镇"]

    },"孝感市":{"孝南区":["肖港镇","书院街道","车站街道","新华街道"],"应城市":["城中街道","城北街道","杨河镇","三合镇"],"安陆市":["李店镇","巡店镇","雷公镇","陈店乡"],

    },
}# print(Hbei_map["孝感市"]["应城市"])shiqu_dir = {}
xian_dir ={}
jiedao_dir = {}def jiance(name):if len(name) == 0:
        sys.exit("\033[31;1m选择不能为空,清重新输入~~\033[0m")elif shiqu == "quit" or shiqu == "exit":
        sys.exit("\033[31;1m 退出程序,三级菜单退出~~ \033[0m")else:return Trueprint("==============================================================================================================")print("湖北省下面的市区如下: ")for number,key in enumerate(Hbei_map.keys()):print(str(number+1) + ": " + str(key))
    shiqu_dir[number+1] = key

chose = []
shiqu_list = [x+1 for x in range(len(shiqu_dir.keys()))]while True:print("==========================================================================================================")
    shiqu = input("请输入您要查询的市区所对应的序列号,输入exit或者quit自动会退出.:")
    jiance(shiqu)if int(shiqu) not in shiqu_dir.keys():print("您输入了非法的序列,请输入一下序列 {}".format(shiqu_list))else:for keys,vlaue in shiqu_dir.items():if int(shiqu) == keys:
                chose = []
                chose.append(vlaue)print("================================================================================================")print("该市区下面的县级市或者片区域,县城列表如下:")for number,keys_xian in enumerate(Hbei_map[vlaue].keys()):print(str(number+1)+ ":" + str(keys_xian))
                    xian_dir[number+1] = keys_xianwhile True:print("=============================================================================================")
                    xian = input("请输入要查询的县城所对应的序列号,quit/exit退出: ")
                    jiance(xian)
                    xian_list = [x+1 for x in range(len(xian_dir.keys()))]if int(xian) not in xian_dir.keys():                         print("您输入了非法的序列,请输入一下序列 {}".format(xian_list))else:for k,v in xian_dir.items():if int(xian) == k:
                                chose.append(v)

                        jiedao_li = Hbei_map[chose[0]][chose[1]]for k,v in enumerate(jiedao_li):print(str(k+1) + ": " + str(v))
                            jiedao_dir[k+1] = vwhile True:print("=====================================================================================")
                            jiedao = input("请输入街道所对应的序列号 退出请输入quit/exit: ")
                            jiance(jiedao)
                            jiedao_list = [x+1 for x in range(len(jiedao_dir.keys()))]if int(jiedao) not in jiedao_dir.keys():print("您输入了非法的序列,请输入一下序列 {}".format(jiedao_list))else:for k,v in jiedao_dir.items():if int(jiedao) == k:
                                        chose.append(v)print("=================================================================================")print("\033[35;1m你选择的市:%s 县城是:%s 街道是:%s\033[0m"%(chose[0],chose[1],chose[2]))print("===================================================================================")breakbreakbreak
Salin selepas log masuk

Atas ialah kandungan terperinci python编写一个三级while的循环菜单实例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP dan Python: Contoh dan perbandingan kod PHP dan Python: Contoh dan perbandingan kod Apr 15, 2025 am 12:07 AM

PHP dan Python mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya bergantung kepada keperluan projek dan keutamaan peribadi. 1.PHP sesuai untuk pembangunan pesat dan penyelenggaraan aplikasi web berskala besar. 2. Python menguasai bidang sains data dan pembelajaran mesin.

Python vs JavaScript: Komuniti, Perpustakaan, dan Sumber Python vs JavaScript: Komuniti, Perpustakaan, dan Sumber Apr 15, 2025 am 12:16 AM

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Penjelasan terperinci mengenai Prinsip Docker Penjelasan terperinci mengenai Prinsip Docker Apr 14, 2025 pm 11:57 PM

Docker menggunakan ciri -ciri kernel Linux untuk menyediakan persekitaran berjalan yang cekap dan terpencil. Prinsip kerjanya adalah seperti berikut: 1. Cermin digunakan sebagai templat baca sahaja, yang mengandungi semua yang anda perlukan untuk menjalankan aplikasi; 2. Sistem Fail Kesatuan (Unionfs) menyusun pelbagai sistem fail, hanya menyimpan perbezaan, menjimatkan ruang dan mempercepatkan; 3. Daemon menguruskan cermin dan bekas, dan pelanggan menggunakannya untuk interaksi; 4. Ruang nama dan cgroups melaksanakan pengasingan kontena dan batasan sumber; 5. Pelbagai mod rangkaian menyokong interkoneksi kontena. Hanya dengan memahami konsep -konsep teras ini, anda boleh menggunakan Docker dengan lebih baik.

Cara menjalankan program di terminal vscode Cara menjalankan program di terminal vscode Apr 15, 2025 pm 06:42 PM

Dalam kod VS, anda boleh menjalankan program di terminal melalui langkah -langkah berikut: Sediakan kod dan buka terminal bersepadu untuk memastikan bahawa direktori kod selaras dengan direktori kerja terminal. Pilih arahan Run mengikut bahasa pengaturcaraan (seperti python python your_file_name.py) untuk memeriksa sama ada ia berjalan dengan jayanya dan menyelesaikan kesilapan. Gunakan debugger untuk meningkatkan kecekapan debug.

Python: Automasi, skrip, dan pengurusan tugas Python: Automasi, skrip, dan pengurusan tugas Apr 16, 2025 am 12:14 AM

Python cemerlang dalam automasi, skrip, dan pengurusan tugas. 1) Automasi: Sandaran fail direalisasikan melalui perpustakaan standard seperti OS dan Shutil. 2) Penulisan Skrip: Gunakan Perpustakaan Psutil untuk memantau sumber sistem. 3) Pengurusan Tugas: Gunakan perpustakaan jadual untuk menjadualkan tugas. Kemudahan penggunaan Python dan sokongan perpustakaan yang kaya menjadikannya alat pilihan di kawasan ini.

Adakah sambungan vscode berniat jahat? Adakah sambungan vscode berniat jahat? Apr 15, 2025 pm 07:57 PM

Sambungan kod VS menimbulkan risiko yang berniat jahat, seperti menyembunyikan kod jahat, mengeksploitasi kelemahan, dan melancap sebagai sambungan yang sah. Kaedah untuk mengenal pasti sambungan yang berniat jahat termasuk: memeriksa penerbit, membaca komen, memeriksa kod, dan memasang dengan berhati -hati. Langkah -langkah keselamatan juga termasuk: kesedaran keselamatan, tabiat yang baik, kemas kini tetap dan perisian antivirus.

Cara Memasang Nginx di CentOs Cara Memasang Nginx di CentOs Apr 14, 2025 pm 08:06 PM

CentOS Memasang Nginx memerlukan mengikuti langkah-langkah berikut: memasang kebergantungan seperti alat pembangunan, pcre-devel, dan openssl-devel. Muat turun Pakej Kod Sumber Nginx, unzip dan menyusun dan memasangnya, dan tentukan laluan pemasangan sebagai/usr/local/nginx. Buat pengguna Nginx dan kumpulan pengguna dan tetapkan kebenaran. Ubah suai fail konfigurasi nginx.conf, dan konfigurasikan port pendengaran dan nama domain/alamat IP. Mulakan perkhidmatan Nginx. Kesalahan biasa perlu diberi perhatian, seperti isu ketergantungan, konflik pelabuhan, dan kesilapan fail konfigurasi. Pengoptimuman prestasi perlu diselaraskan mengikut keadaan tertentu, seperti menghidupkan cache dan menyesuaikan bilangan proses pekerja.

Apa itu vscode untuk apa vscode? Apa itu vscode untuk apa vscode? Apr 15, 2025 pm 06:45 PM

VS Kod adalah nama penuh Visual Studio Code, yang merupakan editor kod dan persekitaran pembangunan yang dibangunkan oleh Microsoft. Ia menyokong pelbagai bahasa pengaturcaraan dan menyediakan penonjolan sintaks, penyiapan automatik kod, coretan kod dan arahan pintar untuk meningkatkan kecekapan pembangunan. Melalui ekosistem lanjutan yang kaya, pengguna boleh menambah sambungan kepada keperluan dan bahasa tertentu, seperti debuggers, alat pemformatan kod, dan integrasi Git. VS Kod juga termasuk debugger intuitif yang membantu dengan cepat mencari dan menyelesaikan pepijat dalam kod anda.

See all articles