第三天学习内容

今日内容

1、整型(int)

2、布尔类型(bool)

3、字符串(str)

内容详细

1、整型

Python中的整型用int表示。
1.python2中:

  • 在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647

  • 在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807

  • 超出长度之后就会变为long类型。

2.python3中:

  • 只有int,所有数字都是int类型。

注意:在python2中使用除法时,只能保留整数位,如果想要保留小数位,可以先导入一个模块。

from __future__ import division
value = 3/2
print(value)

2、布尔值(bool)

  • 只有两个值:True/False
  • 转换
    • 数字转布尔:0是False,其他都是True
    • 字符串转布尔:“”是False,其他都是True

3、 字符串(str/string)

1.字符串特有功能

  • 1.upper() #全部大写

    .lower()#全部小写

    # 示例一
    a = "ascd"
    b = a.upper()
    print(a,b)    # ascd ASCD
    
    # 示例二
    a = "ABCD"
    b = a.lower()
    print(a,b)    # ABCD abcd
  • 2.isdigit() #字符串是否数字组成

    # 示例一
    a = "ABCD"
    b = a.isdigit()
    print(a,b)    # ABCD False
    
    # 示例二
    a = "123"
    b = a.isdigit()
    print(a,b)    # 123 True
  • 3.strip() #去除两边空格

    .lstrip() #去除左边空格

    .rstrip()#去除左边空格

    # 示例一
    a = "   123   "
    b = a.strip()
    print(">>%s<<,"%(a),">>%s<<,"%(b))    # >>   123   <<, >>123<<,
    
    # 示例二
    a = "   123   "
    b = a.lstrip()
    print(">>%s<<,"%(a),">>%s<<,"%(b))    # >>   123   <<, >>123   <<,
    
    # 示例三
    a = "   123   "
    b = a.rsplit()
    print(">>%s<<,"%(a),">>%s<<,"%(b))#>>   123   <<, >>   123<<,<<,
  • 4.replace("被替换的字符/子序列","要替换为的内容") .

    replace("被替换的字符/子序列","要替换为的内容",几次)。

    # 示例一
    a = "abc23"
    b = a.replace("ab","12")
    print(b)  # 12c23
    
    # 示例二
    a = "abc23abab"
    b = a.replace("ab","12",2)
    print(b)  # 12c2312ab
  • 5.split('根据什么东西进行分割') #从左往右分割

    .split('根据什么东西进行分割', 几次) #从左往右分割

    . rsplit('根据什么东西进行分割') #从右往左分割

    . rsplit('根据什么东西进行分割', 几次) #从右往左分割

    # 示例一
    a = "abc23abab"
    b = a.split("b")
    print(b)  # ['ab', '23abab']  #['a', 'c23a', 'a', ''] 
    
    # 示例二
    a = "abc23abab"
    b = a.split("b",2)
    print(b)  # ['a', 'c23a', 'ab']
    
    # 示例三
    a = "abc23abab"
    b = a.rsplit("b")
    print(b)  # ['a', 'c23a', 'a', '']
    
    # 示例三
    a = "abc23abab"
    b = a.rsplit("b",2)
    print(b)  # ['abc23a', 'a', '']
  • 6.startswith() # 判断是否以什么开头

    .endswith() #判断是否以什么结尾

    # 示例一
    a = "abc23abab"
    b = a.startswith("a")
    print(b)  # True
    
    # 示例二
    a = "abc23abab"
    b = a.endswith("b")
    print(b)  # True
  • 7.format # 字符串格式化的功能。

    基本语法是通过 {}: 来代替以前的 %

    format 函数可以接受不限个参数,位置可以不按顺序。

    a = "{} {}".format("hello", "world")   # 不设置指定位置,按默认顺序
    print(a)  # 'hello world'
    
    a = "{0} {1}".format("hello", "world")  # 设置指定位置
    print(a)  # 'hello world'
    
    a = "{1} {0} {1}".format("hello", "world")  # 设置指定位置
    print(a)  # 'world hello world'
  • 8.encode() # 指定的编码格式编码字符串

    name = '李杰' # 解释器读取到内存后,按照unicode编码存储:8个字节。
    v1 = name.encode('utf-8')
    print(v1)
    v2 = name.encode('gbk')   # b'\xe6\x9d\x8e\xe6\x9d\xb0'   b为字节
    print(v2)            # b'\xc0\xee\xbd\xdc' 
  • 9.join() # 将序列中的元素以指定的字符连接生成一个新的字符串。

    name = 'abcd' # a_b_c_d
    result = "+".join(name) # 循环每个元素,并在元素和元素之间加入连接符。
    print(result) # a+b+c+d

2.公共功能

  • len,计算长度(计算字符串中字符的数量)

    value = "alex"
    number = len(value)
    print(number)
  • 索引取值(0位起始点)

    v = "oldboy"
    v1 = v[0] # 0 1 2 3 ...从前往后看
    v2 = v[-1] # -1 -2 -3 ...从后往前
  • 切片 (0作为开始)

    v = "oldboy"
    v1 = v[2:4] # 2<= 索引位置 < 4
    v2 = v[3:6] # 3<= 索引位置 <= 5
    v2 = v[3:-1] # 3<= 索引位置 < 5
    v2 = v[3:] # 3<= 索引位置 <最后
    v2 = v[:-1] # 第一位 索引位置 <= 5
    print(v2)
    • 步长(面试题) #按区间取值
    # 示例一
    name = 'abcde'
    val = name[0:-1:2]
    print(val)    # ac
    
    # 示例二
    name = 'abcde'
    val = name[::-1]
    print(val)    # edcba
  • for循环

    name = 'abcde'
    for item in name:
        print(item)   # 依次打印name里每个元素
  • range # 创建一个整数列表,一般用在 for 循环中。

    for i in range(1,11):
        if i == 7:
            pass
        else:
            print(i)  # 1 2 3 4 5 6 8 9 10

3.特性

  • 不可变,所以字符串元素不能删除和修改

4、练习题

# !/usr/bin/env python
# -*- coding:utf-8 -*-
# 第一题 有变量name = "aleX leNb " 完成如下操作:

name = "aleX leNb "

name_new = name.strip()
# 移除 name 变量对应的值两边的空格,并输出处理结果
print(name_new)

name_new = name[0:2]
# 判断 name 变量是否以 "al" 开头,并输出结果(用切片)
if name_new == 'al':
    print(name_new)

name_new = name[-2:]
# 判断name变量是否以"Nb"结尾,并输出结果(用切片)
if name_new == 'Nb':
    print(name_new)

name_new = name.replace('l','p')
# 将 name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果
print(name_new)

name_new = name.split('l')
# 将 name 变量对应的值根据 所有的"l" 分割,并输出结果
print(name_new)

name_new = name.split('l',1)
# 将name变量对应的值根据第一个"l"分割,并输出结果
print(name_new)

name_new = name.lower()
# 将 name 变量对应的值变小写,并输出结果
print(name_new)

name_new = name[1:2]
# 请输出 name 变量对应的值的第 2 个字符?
print(name_new)

name_new = name[0:3]
# 请输出 name 变量对应的值的前 3 个字符?
print(name_new)

name_new = name[-2:]
# 请输出 name 变量对应的值的后 2 个字符?
print(name_new)

#第二题 有字符串s = "123a4b5c"
s = "123a4b5c"

s_new = s[0:3]
# 通过对s切片形成新的字符串 "123"
print(s_new)

s_new = s[3:6]
# 通过对s切片形成新的字符串 "a4b"
print(s_new)

s5 = s[-1:]
# 通过对s切片形成字符串s5,s5 = "c"
print(s5)

d = s[-3] + s[3] + s[1]
# 通过对s切片形成字符串s6,s6 = "ba2"
print(d)

# 第三题 使用while循环字符串 s="asdfer" 中每个元素。

s="asdfer"
a = int(len(s))  #计算s的长度
b = 0
while b<a:
    c = s[b]
    print(c)
    b +=1

# 第四题 使用while循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!"。

s="321"
a = int(len(s))  #计算s的长度
b = 0
while b<a:  #循环
    c = s[b]    #一次打印索引
    print("倒计时%s秒"%(c))
    b +=1
print("出发!")

# 第五题 实现一个整数加法计算器(两个数相加)
#   如:content = input("请输入内容:")
#   用户输入:5+9或5+ 9或5 + 9(含空白),然后进行分割转换最终进行整数的计算得到结果。

content = input("请输入内容:") #先输入内容
a = content.strip()
b = a[0:1]
c = a[-1:]
d = int(b)+int(c)
print(d)

# 第六题 计算用户输入的内容中有几个 h 字符?
# 如:content = input("请输入内容:") # 如fhdal234slfh98769fjdla

s=input("请输入内容:")
a = int(len(s))  #计算s的长度
b = 0
d = 0
while b<a:  #循环
    c = s[b]    #一次打印索引
    if c == 'h':
        d = d + 1
    b +=1
print(d)

# 第七题 计算用户输入的内容中有几个 h 或 H 字符?
# 如:content = input("请输入内容:") # 如fhdal234slfH9H769fjdla

s=input("请输入内容:")
a = int(len(s))  #计算s的长度
b = 0
d = 0
while b<a:  #循环
    c = s[b]    #依次打印索引
    e = c.upper() #强制转换为大写
    if e == 'H': #判断索引是否为 H
        d = d + 1
    b +=1
print(d)

# 第八题 使用while循环分别正向和反向对字符串 message = "伤情最是晚凉天,憔悴厮人不堪言。" 进行打印。

#message = "伤情最是晚凉天,憔悴厮人不堪言。"
# 正向
s=input("请输入内容:")
a = int(len(s))  #计算s的长度
b = 0
while b < a:
    c = s[b]
    print(c)
    b = b + 1
 #反向
s=input("请输入内容:")
a = -int(len(s))  #计算s的长度
b = -1
while b > a:
    c = s[b]
    print(c)
    b = b - 1

# 第九题 获取用户输入的内容中 前4个字符中 有几个 A ?

s=input("请输入内容:")
a = 0
d = 0
while a<4:  #循环
    c = s[a]    #一次打印索引
    if c == 'A':
        d = d + 1
    a +=1
print(d)

# 第十题 获取用户输入的内容,并计算前四位"l"出现几次,并输出结果。

s=input("请输入内容:")
a = 0
d = 0
while a<4:  #循环
    c = s[a]    #一次打印索引
    if c == 'l':
        d = d + 1
    a +=1
print(d)

# 第十一题 获取用户两次输入的内容,并将所有的数据获取并进行相加,如:
# 要求:
#   将num1中的的所有数字找到并拼接起来:1232312
#   将num1中的的所有数字找到并拼接起来:1218323
#   然后将两个数字进行相加。
# num1 = input("请输入:") # asdfd123sf2312
# num2 = input("请输入:") # a12dfd183sf23
# # 请补充代码

num1 = input("请输入:")
num2 = input("请输入:")
a = len(num1)
b = len(num2)
c = 0
d = 0
while c < a:
    e1 = num1[c]
    f1 = e1.isdigit()
    if f1 == True:
        g1 += f1
    else:
        pass
    c += 1
while d < b:
    e2 = num2[d]
    f2 = e2.isdigit()
    if f2 == True:
        g2 += f2
    else:
        pass
    d += 1
print(g1 + g2)

分分钟钟学会Python - 数据类型(int、bool、str)的更多相关文章

  1. 分分钟钟学会Python - 数据类型(list、tuple)

    第四节 数据类型(列表.元祖) 今日内容 列表 元祖 1.列表 1.格式 users = ["ji",1,3,"gyhj"] 2.公共方法 1.len #计算长 ...

  2. 分分钟钟学会Python - 数据类型(set)

    目录 今日内容 具体内容 1.集合含义 2.独有方法 3.公共方法 4.特殊情况 5.总结 @ 今日内容 集合(set) 具体内容 1.集合含义 一个无序的不重复元素序列. 可以使用大括号 { } 或 ...

  3. 分分钟钟学会Python - 数据类型(dict)

    今日内容 字典(dict) 具体内容 1.字典含义 帮助用户去表示一个事物的信息(事物是有多个属性). 基本格式 data = {键:值,键:值,键:值,键:值,键:值,键:值,} # 练习题 use ...

  4. 基本数据类型int,bool,str

    .基本数据类型(int,bool,str) 基本数据数据类型: int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, False list 列表.用来存放大 ...

  5. day3------基本数据类型int, bool, str,list,tuple,dict

    基本数据类型(int, bool, str,list,tuple,dict) 一.python基本数据类型 1. int  整数. 主要用来进行数学运算 2. str  字符串, 可以保存少量数据并进 ...

  6. 第三天-基本数据类型 int bool str

    # python基础数据类型 # 1. int 整数 # 2.str 字符串.不会用字符串保存大量的数据 # 3.bool 布尔值. True, False # 4.list 列表(重点) 存放大量的 ...

  7. 基本数据类型(int,bool,str)

    目录: 1.int        数字类型 2.bool      布尔值 3.str    字符串类型 一.整型(int) 在python3中所有的整数都是int类型.但在python2中如果数据量 ...

  8. python中的基本数据类型(int,bool,str)及字符串操作

    一. 基本数据类型概况 1.  int 整数,主要用来进行数学运算 2.  str 字符串,可以保存少量数据并进行相应的操作 3.  bool 布尔值,判断真假,True,False 4.  list ...

  9. python基本数据类型,int,bool,str

    一丶python基本数据类型 1.int 整数,主要用来进行数学运算. 2.str 字符串,可以保存少量数据并进行相应的操作 3.bool 判断真假.True.False 4.list 存储大量数据, ...

随机推荐

  1. Photo1

    Story: 想象你是一个乡村的孩子,你有着健康的肤色,正在和家人一起坐在颠簸的马车上,赶着去城里买东西.正值夏日,黄昏的阳光晒在你的脸上,于是你的脸显得红扑扑的.路上满满的都是葱绿的草和参差不齐的树 ...

  2. SpringMVC 2.5.6 +Hibernate 3.2.0

    spring MVC配置详解 现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时 ...

  3. Android开发之Tween(补间动画)

    在android中动画主要有三种,①帧动画(http://blog.csdn.net/dmk877/article/details/45893017)这篇文章已经详细的进行了讲解,②补间动画这也是这篇 ...

  4. Alpha冲刺(四)

    Information: 队名:彳艮彳亍团队 组长博客:戳我进入 作业博客:班级博客本次作业的链接 Details: 组员1(组长)柯奇豪 过去两天完成了哪些任务 文章基本的存储.列表生成显示 展示G ...

  5. Linux daemon与service 学习笔记

    service 常驻在内存中的进程,且可以提供一些系统或网络功能,就是服务.   daemon service的提供需要进程的运行,所以实现service的程序我们称为daemon.   eg: 实现 ...

  6. Java50道经典习题-程序2 输出素数

    题目:判断101-200之间有多少个素数,并输出所有素数 分析:判断素数的方法:用一个数分别去除2到(这个数-1)的数,如果能被整除,则表明此数不是素数,反之是素数. public class Pro ...

  7. MVVM ICommand.CanExecute parameter is null

    CommandParameter="{Binding}" 改为 CommandParameter="{Binding DataContext,RelativeSource ...

  8. RobotFramework与Jenkins集成后失败用例重跑

    Jenkins的执行Windows批处理命令填写如下: call pybot.bat -i 1adsInterface 01_测试用例\接口测试用例\adsInterface.txt call pyb ...

  9. JS设置localStorage有效期

    localStorage是一个没有时间限制的数据存储,如果没有手动删除它,它将永久保存. 但是有些时候我们又需要它在一段时间后自动删除,这里我们可以对它进行扩展. var date = new Dat ...

  10. OCP 052新加的考试题收集整理-第20道

    20. Which is true about the SYSTEM and SYSAUX tablespaces? A) The SYSAUX tablespace can be made read ...