python03

第三天

  1. 整型
  2. 布尔类型
  3. 字符串

内容回顾和补充

  1. 思维导图
  • xmind软件
  • processon网页
  1. 补充
  • 运算符: in /not in
value = '我是中国人'
# 判断'中国'是否为value的子序列
v = '中国' in value
# 示例
while True:
	content = input('请输入内容:')
	if '退钱' in content:
		print('包含敏感字符,请重新输入')
	else:
		print('输入成功!')
		break

整型

  1. 特殊
  • python2:
  • 在32位机器上,整数的位数为32位,取值范围是:
-2**312**31-1,即-21474836482147483647
  • 在64位系统上,整数的位数是64位,取值范围为:
-2**632**63-1,即-92233720368547758089223372036854775807
  • 超出长度后会变成long长整型
  • 整型除法结果会取整,需要增加:
from __future__ import division

后才能得到正确结果

  • python3
    • 只有int没有long,所有数字都是int类型
  • 正常计算

布尔值

  1. bool
  • True
  • False
  1. 转换

字符串(str)

  1. 大写/小写(.upper()/.lower())
value = 'hello world'
new_big_value = value.upper()
new_small_value = new_big_value.lower()
print(new_big_value, new_small_value)
  • 不区分验证码大小写实例:
check_code = 'HiOn'
code = input('请输入验证码 %s :' % (check_code,))
if code.lower() == check_code.lower():
    print('验证成功')
  1. 判断字符串是否可以转换为数字(.isdigit())
while True:
    num = input('请选择服务:')
    if num.isdigit():
        num = int(num)
        print(num)
    else:
        print('请输入数字!')
  1. 去除左右边空格(.lstrip()/ .retrip() / .scrip())
  2. 替换(.replace())
  • 敏感词替换
  • .replace(‘被替换子序列’,‘替换成的内容’,‘替换前几个’)
message = input('请输入')
new_message = message.replace('大爷', '**')
print(new_message)
  1. 切割
  • .split(‘切割标志’,用几个切割标志切割)
  • rsplit(从左到右)
  • 得到一个序列
message = input('请输入')
new_message = message.split('/')
print(new_message)
  1. 计算长度(len() 公共的不知用于字符串)
  • 对字符串:字符的长度
  1. 索引
  • 字符串变量[n] (取出索引为N的字符,索引从0开始往后取,-1为倒数第一)
  • 练习
# 计算用户输入字符串中数字的个数
text = input('请输入内容:')
index = 0
count = 0
while index != len(text):
    character = text[index]
    if character.isdigit():
        count += 1
    index += 1
else:
    print(count)
  1. 切片
  • 字符串变量[N:M](取出N<=索引<M之间的字符)
  • [N:](从N开始取到最后)

作业

  1. 有变量name = "aleX leNb " 完成如下操作:
  • 移除 name 变量对应的值两边的空格,并输出处理结果
name = "aleX leNb "
new_name = name.strip()
print(new_name)
  • 判断 name 变量是否以 “al” 开头,并输出结果(用切片)
name = "aleX leNb "
new_name = name[0:2]
result = new_name == 'al'
print(result)
  • 判断name变量是否以"Nb"结尾,并输出结果(用切片)
name = "aleX leNb "
new_name = name[-3:-1]
print(new_name)
result = new_name == 'Nb'
print(result)
  • 将 name 变量对应的值中的 所有的"l" 替换为 “p”,并输出结果
name = "aleX leNb "
new_name = name.replace('l', 'p')
print(new_name)
  • 将name变量对应的值中的第一个"l"替换成"p",并输出结果
name = "aleX leNb "
new_name = name.replace('l', 'p', 1)
print(new_name)
  • 将 name 变量对应的值根据 所有的"l" 分割,并输出结果
name = "aleX leNb "
new_name = name.split('l')
print(new_name)
  • 将 name 变量对应的值变大写,并输出结果
name = "aleX leNb "
new_name = name.upper()
print(new_name)
  • 将 name 变量对应的值变小写,并输出结果
name = "aleX leNb "
new_name = name.lower()
print(new_name)
`
- 请输出 name 变量对应的值的第 2 个字符?

```python
name = "aleX leNb "
new_name = name[1]
print(new_name)
  • 请输出 name 变量对应的值的前 3 个字符?
name = "aleX leNb "
new_name = name[2]
print(new_name)
  • 请输出 name 变量对应的值的后 2 个字符?
name = "aleX leNb "
new_name = name[-3:]
print(new_name)
  1. 字符串 s=“123a4b5c”
  • 通过对s切片形成新的字符串 “123”
s = '123a4b5c'
new_s = s[0:3]
print(new_s)
  • 通过对s切片形成新的字符串 “a4b”
s = '123a4b5c'
new_s = s[3:6]
print(new_s)
  • 通过对s切片形成字符串s5,s5 = “c”
s = '123a4b5c'
s1 = s[5:6]
s2 = s[3:4]
s3 = s[1:2]
s6 = '%s%s%s' % (s1, s2, s3,)
print(s6)
  • 使用while循环字符串 s=“asdfer” 中每个元素
s = 'asdfer'
index = 0
while index != len(s):
    new_s = s[index]
    print(new_s)
    index += 1
  • 使用while循环对s="321"进行循环,打印的内容依次是:“倒计时3秒”,“倒计时2秒”,“倒计时1秒”,"出发!“
s = '321'
index = 0
while index != len(s):
    print('倒计时%s秒' % (s[index],))
    index += 1
else:
    print('出发!')
  • 实现一个整数加法计算器(两个数相加):

如:content = input(“请输入内容:”) 用户输入:5+9或5+ 9或5 + 9(含空白),然后进行分割转换最终进行整数的计算得到结果。

# 方法1
content = input('请输入内容:')
new_content = content.strip()
c1 = int(new_content[0])
c2 = int(new_content[-1])
print(c1 + c2)
# 方法2可执行多位数加法
content = input('请输入:')
content = content.strip()
content_new = content.split('+')
v1 = int(content_new[0].strip())
v2 = int(content_new[-1].strip())
print(v1 + v2)

- 获取用户两次输入的内容,并将所有的数据获取并进行相加,如

```python
"""
要求:
	将num1中的的所有数字找到并拼接起来:1232312
	将num1中的的所有数字找到并拼接起来:1218323
	然后将两个数字进行相加。
"""

num1 = input("请输入:") # asdfd123sf2312
num2 = input("请输入:") # a12dfd183sf23
# 请补充代码
count = 0
index = 0
while index != len(num1) or index != len(num2):
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值