系统学习python第四天学习笔记
1.解释 / 编译补充
- 编译型:代码写完后,编译器将其变成成另外一个文件,然后交给计算机执行。
- 解释型:写完代码交给解释器,解释器会从上到下一行行代码执行:边解释边执行。 【实时翻译】
2.字符串功能补充
字符串特有功能
startswith / endswith
- 判断是否以什么为开头或结尾
name = 'alex' # 判断是否以al开头 """ # 方式一: flag = name.startswith('al') print(flag) """ """ # 方式二: val = name[0:2] if val == 'al': print('是以al开头') else: print('不是') """format
- 格式化输出
name = "我叫{0},年龄:{1}".format('老男孩',73) print(name)encode
- 以什么编码格式存入
name = '李杰' # 解释器读取到内存后,按照unicode编码存储:8个字节。 v1 = name.encode('utf-8') print(v1) v2 = name.encode('gbk') print(v2)join
- 以特定字符连接字符串
name = 'alex' # a_l_e_x result = "**".join(name) # 循环每个元素,并在元素和元素之间加入连接符。 print(result)
公共功能
步长
- 正数表示从左到右,负数表示从右到左
name = 'alex' # val = name[0:-1:2] # val = name[1:-1:2] # val = name[1::2] # val = name[::2] # val = name[-1:0:-2] # print(val) # 笔试题:请将字符串反转。 val = name[::-1] print(val)for 循环
name = 'alex' for item in name: print(item)name = 'alex' for item in name: print(item) break print('123')name = 'alex' for item in name: print(item) continue print('123')# 练习题 # 1. for循环打印 “alex” 的每个元素: for > while # 2. 请打印: 1 - 10 """ for i in range(1,11): # [1,2,3,4,5,6,7,8,9,10,11,12,14] "12345678910" print(i) """ # 3. 请打印: 1 2 3 4 5 6 8 9 10 """ for i in range(1,11): if i == 7: pass else: print(i) """注意:for和while的应用场景:有穷尽优先使用for,无穷尽用while
3.列表
如果想要表示两个同学 users = "李邵,李奇航...".
以后想要表示多个”事物“,可以使用列表。
users = ["李邵奇","奇航",99]
公共功能
len
users = ["李邵奇","奇航",99] val = len(users) print(val) # 3索引
users = ["李邵奇","奇航",99] val = users[0] print(val)切片
users = ["李邵奇","奇航",99] val = users[0:2]删除(数字/布尔/字符串除外)
users = ["李邵奇","奇航",99] # 方式一 users.pop(1) print(users) # 方式二: del users[1] print(users)注意:
- 字符串本身不能修改或删除【不可变类型】 v1 = "alex".upper()
- 列表是可变类型。
修改(字符串/数字/布尔除外)
users = ["李邵奇","奇航",99] users[2] = 66 users[0] = '李杰' users[0][1]步长
users = ["李邵奇","奇航",99] val = users[0:2:2]练习题
""" 实现一个整数加法计算器(两个数相加): 如:content = input("请输入内容:") 用户输入:5+9或5+ 9或5 + 9(含空白),然后进行分割转换最终进行整数的计算得到结果。 """ # 思路一: """ content = input('请输入:') # [5+9] 或 [5 +9] 或者 [ 5 + 9 ] content = content.strip() # [5+9] 或 [5 +9] 或者 [5 + 9] v1 = int(content[0]) v2 = int(content[-1]) v3 = v1 + v2 """ # 思路二: """ content = input('请输入:') # [5+9] 或 [5 +9] 或者 [ 5 + 9 ] content_len = len(content) index = 0 total = 0 while True: char = content[index] if char.isdigit(): total += int(char) index += 1 if index == content_len: break print(total) """ # 思路三: """ content = input('请输入:') # [5+9] 或 [5 +9] 或者 [ 5 + 9 ] result = content.split('+') # print(result) # ['55 ', ' 99 '] v1 = int(result[0]) # "55" v2 = int(result[1]) # " 99 " v3 = v1 + v2 print(v3) """for循环
""" users = ['李邵奇','利奇航','张三丰','李子森'] for i in users: print(i) """ """ users = ['李邵奇','利奇航','张三丰','李子森'] for i in users: # 第一次循环:i=“李邵奇” print(i) for ele in i: print(ele) """ # 练习题:请通过for循环和数字计数器实现:users = ['李邵奇','利奇航','张三丰','李子森'] """ 0 李邵奇 1 利奇航 2 张三丰 3 李子森 """ """ # 方式一 users = ['李邵奇','利奇航','张三丰','李子森'] count = 0 for i in users: print(count,i) count += 1 """ """ # 方式二 users = ['李邵奇','利奇航','张三丰','李子森'] users_len = len(users) # 4 for index in range(0,users_len): # [0,1,2,3] print(index,users[index]) """
独有功能
append,在列表的最后追加一个元素
users = [] users.append('alex') print(users)""" 示例一: users = [] while True: name = input('请输入姓名:') users.append(name) print(users) """ """ 示例二: # 录入用户和密码 users = [] for i in range(0,3): name = input('请输入用户名和密码:') users.append(name) print(users) # ['alex,123', 'oldboy,888', 'lishaoqi,123'] # 用户和密码校验 username = input('请输入要登陆用户名:') password = input('请输入要登陆密码:') for item in users: result = item.split(',') # ['alex','123'] user = result[0] pwd = result[1] if user == username and pwd == password: print('登陆成功') break """insert
remove
pop
clear
列表总结:
增:
- append / insert
删:
- remove / pop / clear / del users[2]
改:
- users[3] = "新值"
查:
- 索引/切片
列表嵌套
users = ["alex",0,True,[11,22,33,"老男孩"],[1,['alex','oldboy'],2,3]] users[0] users[2] users[0][2] users[3] # [11,22,33,"老男孩"] users[3][-1] # "老男孩" users[3][-1][1] # '男' users[3] = 666
4.元组
元组书写规范
users = [11,22,33,"老男孩"] # 列表(可变) users = (11,22,33,"老男孩") # 元组(不可变)公共功能
索引(排除:int/bool)
users = (11,22,33,"老男孩") print(users[0]) print(users[-1])切片(排除:int/bool)
users = (11,22,33,"老男孩") print(users[0:2])步长(排除:int/bool)
users = (11,22,33,"老男孩") print(users[0:2:2])删除(排除:tuple/str/int/bool)
修改(排除:tuple/str/int/bool)
for循环(排除:int/bool)
users = (11,22,33,"老男孩") for item in users: print(item)len(排除:int/bool)
users = (11,22,33,"老男孩") print(len(users))
独有功能(无)
特殊:元组中的元素(儿子)不可被修改/删除。
# 示例一: v1 = (11,22,33) v1[1] = 999 # 错误 v1 = 999 # 正确 # 示例二:可以嵌套 v1 = (11,22,33,(44,55,66),(11,2,(99,88,),3)) # 示例三:嵌套 v2 = [11,22,33,(11,22,33)] v2[-1][1] = 99 # 错误 v2[-1] = 123 # 正确 # 示例四:嵌套 v3 = (11,[1,2,3],22,33) v3[1] = 666 # 错误 v3[1][2] = 123
系统学习python第四天学习笔记的更多相关文章
- Python学习---Python下[元组]的学习
元组是不可变的, 用小括号()定义,而且一旦定义 ,不可变[类型是tuple] [元组看做一个整体,不可拆分,不可赋值,但可以全部重新赋值] 通过圆括号,用逗号分隔,常用在使语句或用户定义的函数能够安 ...
- 学习Python不得不关注和学习的国外大神博客
注意 : 本文收集于网路 . 由于常常更新 , 有些链接打不开, 请自备梯子 在学习Python过程中,总会遇到各种各样的坑, 虽然Python是一门优美而简单易学的语言 . 但当学习后 , 总想着更 ...
- 系统学习python第三天学习笔记
day02补充 运算符补充 in value = "我是中国人" # 判断'中国'是否在value所代指的字符串中. "中国"是否是value所代指的字符串的子 ...
- 系统学习python第七天学习笔记
1.get方法用法补充 info = {'name':'王刚蛋','hobby':'铁锤'} while True: data = input('请输入:') val = info.get(data, ...
- 系统学习python第五天学习笔记
1.列表补充 extend() li = ["alex", "WuSir", "ritian", "barry", &q ...
- python 第四阶段 学习记录之----异步
异步: 知识情况: 1.多线程, 多线程使用场景 1.IO操作不占CPU,读写数据(网络中.系统中) 2.计算占CPU, 3.上下文切换不占CPU.它消耗资源 python多线程 不适合CPU密集型的 ...
- 【Python】Java程序员学习Python(四)— 内置方法和内置变量
<假如爱有天意> 当天边那颗星出现,你可知我又开始想念,有多少爱恋只能遥遥相望,就像月光洒向海面,年少的我们曾以为,相爱的人就能到永远,当我们相信情到深处在一起,听不见风中的叹息,谁知道爱 ...
- 学习python第四天——Oracle查询
3.子查询(难): 当进行查询的时候,发现需要的数据信息不明确,需要先通过另一个查询得到, 此查询称为子查询: 执行顺序:先执行子查询得到结果以后返回给主查询 组成部分: 1).主查询部分 2).子查 ...
- 学习python,第四篇:Python 3中bytes/string的区别
原文:http://eli.thegreenplace.net/2012/01/30/the-bytesstr-dichotomy-in-python-3 python 3中最重要的新特性可能就是将文 ...
随机推荐
- JD-Store购物网站复盘——20170312
一.商店技术架构 1.主题 2.涉及技术点: 3.核心业务功能 4.角色 5.用户故事 二.实现步骤 专案基础设施 上传图片模块 购物车 订单 支付&寄信 专案源码 三.第三方服务应用 支付 ...
- python 获取cpu、内存、硬盘等实时信息 psutil
psutil是一个跨平台库,能够轻松实现获取系统运行的进程和系统利用率(CPU,内存,磁盘,网络等)信息,主要应用于系统监控,分析和限制系统资源及进程的管理,它实现了同等命令行工具提供的功能,如ps, ...
- 洛谷 P3133 [USACO16JAN]Radio Contact G
题目传送门 解题思路: f[i][j]表示FJ走了i步,Bessie走了j步的最小消耗值.方程比较好推. 横纵坐标要搞清楚,因为这东西WA了半小时. AC代码: #include<iostrea ...
- python 首先生成包含1000个随机字符的字符串,然后统计每个字符的出现次数
题目:首先生成包含1000个随机字符的字符串,然后统计每个字符的出现次数 import string import random x = string.ascii_letters + string.d ...
- idea下maven项目下spring junit 测试用例
使用idea在编写的类下右键Go->Test或者ctrl+shift+t,点击create new test会在相应目录下创建test类 别写代码如下 @RunWith(value = Spri ...
- 让vscode使用Pipenv工作环境
1.查看Pipenv的位置 # 先激活Pipenv环境 pipenv shell # 获取当前虚拟环境的位置 pipenv --venv 2.打开setting.json配置文件 Ctrl+Shift ...
- bat 卸载程序的脚本
@echo off :: BatchGotAdmin :------------------------------------- REM --> Check for permissions & ...
- 线程与进程 queue模块
queue模块的基本用法 https://www.cnblogs.com/chengd/articles/7778506.html 模块实现了3种类型的队列,区别在于队列中条目检索的顺序不同.在FIF ...
- 专题复习--背包问题+例题(HDU 2602 、POJ 2063、 POJ 1787、 UVA 674 、UVA 147)
*注 虽然没什么人看我的博客但我还是要认认真真写给自己看 背包问题应用场景给定 n 种物品和一个背包.物品 i 的重量是 w i ,其价值为 v i ,背包的容量为C.应该如何选择装入背包中的物品,使 ...
- tomcat的8080,8009,8443,8005都是什么端口
<Server port="8005" shutdown="SHUTDOWN"> 远程停服务端口<Connector port="8 ...