1、转换

  • 将字符串s = "alex"转换成列表
s = "alex"
s_list = list(s)
print(s_list)
  • 将字符串s = "alex"转换成元祖
s = "alex"
s_tuple = tuple(s)
print(s_tuple)
  • 将列表li = [“alex”, “seven”]转换成元组
li = ["alex", "seven"]
li_tuple = tuple(li)
print(li_tuple)
  • 将元祖tu = (‘Alex’, “seven”)转换成列表
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
tu = ('Alex', "seven")
tu_list = list(tu)
print(tu_list)
  • 将列表li = [“alex”, “seven”]转换成字典且字典的key按照10开始向后递增
li = ["alex", "seven"]
li_dic = {}
for k,v in enumerate(li,10):li_dic[k] = v
print(li_dic)

2、元素分类

有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。

即:{‘k1’:大于66的所有值, ‘k2’:小于66的所有值}

li = [11,22,33,44,55,66,77,88,99,90]
li1 = []
li2 = []
for i in li :if i < 66:li1.append(i)elif i > 66:li2.append(i)else:pass
dic = {"k1": li1,"k2": li2}
print(dic)

3、输出商品列表,用户输入序号,显示用户选中的商品

商品 li = [“手机”, “电脑”, ‘鼠标垫’, ‘游艇’]

  • 允许用户添加商品
  • 用户输入序号显示内容
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
li = ["手机", "电脑", '鼠标垫', '游艇']while True:print("商品信息".center(28, "-"))for index,goods in enumerate(li,1):print("%s. %s" % (index, goods))add_choice = input("\n是否添加商品(yes/no):")if add_choice == "yes" or add_choice == "y":add_goods = input("\n请输入需要添加的商品:")li.append(add_goods)elif add_choice == "no" or add_choice == "n":breakelse:print("\n输入错误,请重新输入\n")continue
while True:goods_choice = input("\n请输入需要查看的商品序号,输入非数字退出本程序:")if goods_choice.isdigit():goods_choice = int(goods_choice)if goods_choice >= 1 and goods_choice <= len(li):print("\n",li[goods_choice-1])else:print("\n商品序号错误,请重新输入\n")else:break

4、用户交互显示类似省市县N级联动的选择

  • 允许用户增加内容
  • 允许用户选择查看某一个级别内容
# 输入省份、城市、县序号China = {'河南省': {'焦作市': ['武陟', '温县', '博爱'],'郑州市': ['新郑', '荥阳', '中牟'],'开封市': ['兰考', '尉氏', '杞县'],},'广东省': {'广州市': ['越秀', '荔湾', '番禺'],'深圳市': ['福田', '罗湖', '龙岗'],'东莞市': ['莞城', '南城', '东城'],},
}exit_flag = False
while not exit_flag:  # 第1层循环province_list = [] # 定义一个省份列表city_list = [] # 定义一个城市列表print("\33[31;1m---------------------------------\33[1m")print("         \33[31;1m欢迎您来到中国\33[1m      ")print("\33[31;1m---------------------------------\33[1m")for index,Province in enumerate(China,1):print("%s. %s" % (index,Province))province_list.append(Province) # 添加所有省份到省份列表中print()choice_province = input("一.请输入您要前往的省份序号 (输入q退出,输入b返回上级,输入i自定义):")print()if choice_province == "q" or choice_province == "Q":exit_flag = Trueelif choice_province == "b" or choice_province == "B":continue  # 跳出第1层循环的剩下语句,继续进行下一次循环(选择省份)elif choice_province == "i" or choice_province == "I":print("\33[32;1m自定义信息\33[1m".center(40, "-"))province = input("省份名称:")if China.get(province) == None:China[province] = {} # 增加的省份对应的键值是一个空字典city = input("城市名称:")if China[province].get(city) == None:China[province][city] = [] # 增加的城市对应的键值是一个空列表county = input("县名称:")China[province][city].append(county) # 增加的县是列表中的一个元素print()print("您的自定义信息已经存储成功,请重新进行选择")print()elif choice_province.isdigit():choice_province = int(choice_province)if choice_province >= 1 and choice_province <= len(province_list):while not exit_flag:  # 第2层循环for index,City in enumerate(China[province_list[choice_province-1]],1):print("%s. %s" % (index,City))city_list.append(City)  # 添加所有城市到城市列表中print()choice_city = input("二.请输入您要前往的城市序号 (输入q退出,输入b返回上级):")print()if choice_city == "q" or choice_city == "Q":exit_flag = Trueelif choice_city == "b" or choice_city == "B":break  # 跳出整个第2层循环,重新进行第1层循环(选择省份)elif choice_city.isdigit():choice_city = int(choice_city)if choice_city >=1 and choice_city <= len(city_list):while not exit_flag:  # 第3层循环for index,County in enumerate(China[province_list[choice_province-1]][city_list[choice_city-1]],1):print("%s. %s" % (index, County))print()choice_county = input("三.请输入您要前往的县序号 (输入q退出,输入b返回上级):")print()if choice_county == "q" or choice_county == "Q":exit_flag = Trueelif choice_county == "b" or choice_county == "b":break  # 跳出整个第3层循环,重新进行第2层循环(选择城市)elif choice_county.isdigit():choice_county = int(choice_county)county_list = China[province_list[choice_province - 1]][city_list[choice_city - 1]] # 县列表if choice_county >= 1 and choice_county <= len(county_list):print("---------------------------------")print("您现在的位置是:", province_list[choice_province-1],city_list[choice_city-1],county_list[choice_county-1])print("---------------------------------")exit_flag = Trueelse:print("您输入的县序号不存在")print()else:print("您输入的县序号不存在")print()continueelse:print("您输入的城市序号不存在")print()continueelse:print("您输入的城市序号不存在")print()continueelse:print("您输入的省份序号不存在")print()else:print("您输入的省份序号不存在")print()continue

5、列举布尔值是False的所有值

bool(0)   bool(None)  bool("") bool(())  bool([])  bool({})

6、有两个列表

l1 = [11,22,33]
l2 = [22,33,44]
  • 获取内容相同的元素列表
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
l1 = [11,22,33]
l2 = [22,33,44]s1 = set(l1)
s2 = set(l2)
s3 = s1 & s2l3 = list(s3)print(l3)
  • 获取l1中有,l2中没有的元素列表
l1 = [11,22,33]
l2 = [22,33,44]s1 = set(l1)
s2 = set(l2)
s3 = s1 - s2l3 = list(s3)print(l3)
  • 获取l2中有,l3中没有的元素列表
l1 = [11,22,33]
l2 = [22,33,44]s1 = set(l1)
s2 = set(l2)
s3 = s2 - s1l3 = list(s3)print(l3)
  • 获取l1和l2中内容都不同的元素
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
l1 = [11,22,33]
l2 = [22,33,44]s1 = set(l1)
s2 = set(l2)
s3 = s2 ^ s1l3 = list(s3)print(l3)

7、利用For循环和range输出

  • For循环从小到大输出1 - 100
for i in range(1,101):print(i)
  • For循环从大到小输出100 - 1
for i in range(100,0,-1):print(i)
  • While循环从小到大输出1 - 100
n = 1
while n <= 100:print(n)n += 1
  • While循环从大到小输出100 - 1
n = 100
while n >= 1:print(n)n -= 1

8、利用for循环和range输出9 * 9乘法表

for i in range(1,10):for j in range(1,i+1):print("%d*%d=%2d" % (j,i,i*j),end=" ") # 每次输出不换行(默认print会换行),第二位数字是固定的,所以最外层循环的i代表第二位print (" ") # 当j(第一位数字)遍历一遍时换行

9、判断一个数是否为素数。(编程题)

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
while True:flag = True # 设置一个标志位,flag = True代表是素数,flag = Flase代表非素数n = int(input("请输入一个数字:"))if n < 2: # 0、1以及负数都不是素数flag = Falseelse:for i in range(2,n): # 除以比它小的所有数(不包括1和它本身),看它是否还有其他因数# print(i)if n % i == 0:# print("%d能整除%d" %(n,i))flag = False # 出现一次余数为0就代表可以除尽,即代表这个数为素数,就可以设置flag = Falsebreak # 只要第一次出现flag = False,就不用继续往下循环,直接退出整个循环(第二层)if flag == True:print("%d,是素数" %(n))else:print("%d,非素数" %(n))

10.输出100以内的所有素数。(编程题)

素数又称为质数,它指的是只能被1和它本身整除的整数。其中,1不是素数,任何时候都不用考虑1。

L = [] # 定义一个初始的素数列表
for n in range(2,101): # 循环100以内的素数n,从2开始,0、1不是素数flag = True # 设置一个标志位,flag = True代表是素数,flag = Flase代表不是素数for i in range(2,n): # 除以比它小的所有数(不包括1和它本身),看它是否还有其他因数if n % i == 0:flag = False # 出现一次余数为0就代表可以除尽,即代表这个数为素数,就可以设置flag = Falsebreak # 只要第一次出现flag = False,就不用继续往下循环,直接退出整个循环(第二层)if flag == True:L.append(n) # 当flag = True时代表n为素数,追加到素数列表中
print("100以内的所有素数:",L)

11、求100以内的素数和。(编程题)

素数又称为质数,它指的是只能被1和它本身整除的整数。其中,1不是素数,任何时候都不用考虑1。

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
s = 0 # 设置一个素数初始和为0
for n in range(2,101): # 循环100以内的素数n,从2开始,0、1不是素数flag = True # 设置一个标志位,flag = True代表是素数,flag = Flase代表不是素数for i in range(2,n): # 除以比它小的所有数(不包括1和它本身),看它是否还有其他因数if n % i == 0:flag = False # 出现一次余数为0就代表可以除尽,即代表这个数为素数,就可以设置flag = Falsebreak # 只要第一次出现flag = False,就不用继续往下循环,直接退出整个循环(第二层)if flag == True:s += n # 当flag = True时代表n为素数,此时和之前的素数之和相加得到最新的素数之和
print("100以内的素数和为:",s)

12、将[1,3,2,7,6,23,41,24,33,85,56]从小到大排序(冒泡法)(编程)

li = [1,3,2,7,6,23,41,24,33,85,56]for i in range(len(li)-1): # i的范围0-9if li[i] > li[i+1]: # 相邻的两个数比较li[i],li[i+1] = li[i+1],li[i]
print(li)li = [1,3,2,7,6,23,41,24,33,85,56]for i in range(len(li)-1): # i的范围0-9for j in range(i+1,len(li)): # j的范围1-10if li[i] > li[j]: # 相邻的两个数比较li[i],li[j] = li[j],li[i]
print(li)

12道Python基础字符编码数据类型练习题相关推荐

  1. python中输出变量对应值的字符_第2章 Python基础-字符编码数据类型 字符编码字符串 练习题...

    1.简述位.字节的关系 位(bit)是计算机中最小的表示单元,数据传输是以"位"为单位的,1bit缩写为1b 字节(Byte)是计算机中最小的存储单位,1Byte缩写为1B 8bi ...

  2. python基础|字符编码

    任何一个程序想要运行,必须先有硬盘加载到内存,然后由cpu去内存取只执行.运行着的应用程序的数据,必须在内存运行.python运行文件的三步,首先把python文件解释器读取到内存上,然后应用程序代码 ...

  3. 5道python基础中while循环练习题

    1. 使用while循环输出1 2 3 4 5 6 8 9 10 count=0 while count <10:count+=1print(count) 2. 求1-100的所有数的和 cou ...

  4. 4道Python基础文件操作函数 练习题

    一.利用b模式,编写一个cp工具,要求如下: 既可以拷贝文本又可以拷贝视频,图片等文件 用户一旦参数错误,打印命令的正确使用方法,如usage: cp source_file target_file ...

  5. No.1 字符编码数据类型

    No.1 字符编码&数据类型 一.字符编码 ASCII,主要用于现代英语,定长1byte,最多表示2^8-1=255个符号 GB2312,约7k个汉字,数量太少 GBK扩展到了2w汉字,还有藏 ...

  6. (转载)Python常见字符编码间的转换

    Python常见字符编码间的转换 主要内容:     1.Unicode 和 UTF-8的爱恨纠葛     2.字符在硬盘上的存储     3.编码的转换     4.验证编码是否转换正确     5 ...

  7. python转换字符编码_Python常见字符编码间的转换

    学习Python,字符编码间的转换是绕不过去的一只拦路虎,不把编码彻底搞明白,总有一天它会猝不及防坑你一把. Python2.x和Python3.x在字符编码的设置上也有很大区别(Python3未来将 ...

  8. Practical Python基础1(数据类型,运算,比较符号,字符串,列表,函数等)

    Practical Python基础1(数据类型,运算,比较符号,字符串,列表,函数等) Python是一种解释性的高级编程语言.它通常被归类为"脚本语言",被认为类似于Perl. ...

  9. python转换字符编码_转:Python常见字符编码及其之间的转换

    一.Python常见字符编码 字符编码的常用种类介绍 第一种:ASCII码 ASCII(American Standard Code for Information Interchange,美国信息交 ...

最新文章

  1. 阿里巴巴python库_年薪20万阿里巴巴Python工程师面试题曝光
  2. 打印容器_喷墨打印MnO?制备微型超级电容器
  3. 【收藏】Hbase2.x协处理器的使用
  4. VC中操作INI文件的API
  5. 【Visual C++】游戏开发笔记之八——基础动画显示(二)游戏循环的使用
  6. python 对象序列化 pickling_python操作文件——序列化pickling和JSON
  7. 公众平台小程序文档和工具
  8. 多源最短路径---Floyd-Warshall算法
  9. 遇到流氓软件不要慌,一篇文章帮您完全清理
  10. Unity3D之FingerGestures学习
  11. LEAK: ByteBuf.release() was not called before it‘s garbage-collected
  12. oracle 11客户端精简版,oracle_11g精简版客户端配置
  13. android高仿小米时钟,Android仿小米时钟效果
  14. 如何查找涉密文件_涉密文件信息资料保密管理规定
  15. 推荐几款性价比高的优盘
  16. MTK android系统源码修改快速上手
  17. SAP打开财务和物料的账期(OB52 MMRV MMPV)
  18. 同步以太网-SyncE介绍
  19. Python编程基础题(9-求绝对值最大的元素)
  20. 更轻量的百度百舸,CCE Stack智算版发布

热门文章

  1. 视频监控PPP项目投资建设和运营模式分析
  2. plsql command window 执行批量脚本
  3. 设计模式(中介者模式)
  4. 安装eclipse时遇到的问题
  5. lync 安装后相关防病毒软件的设置
  6. AutoLISP将多段线各个端点坐标写入外部文件
  7. 【重复制造精讲】3、成本收集
  8. Field XXXX input value is longer than screen field-BDC
  9. 【转】用户显示数据库表通用程序
  10. Migo估价记录不存在