为了账号安全,请及时绑定邮箱和手机立即绑定
  • 字符串由一个个字符组成,每一个字符都有一个唯一的位置。比如字符串'ABC',

    0位:第一个字符是A,

    1位:第二个字符是B,

    2位:第三个字符是C。

     

    字符串切片:[ ]——可以使用位置的方式取出字符串中特定位置的字符,按照位置取字符串的方式使用中括号 [] 访问,这个时候可以把字符串看作是一个列表(一种数据类型)

     

    在程序的世界中,计数是从0开始的,使用0来表示第一个

     

    [ num]:[ ]只填一个数字,表示只读取输出一个字符

    s = 'ABC'
    a = s[0] # 第一个
    b = s[1] # 第二个
    c = s[2] # 第三个
    print(a) # ==> A
    print(b) # ==> B
    print(c) # ==> C

     

    [num1:num2]:采取切片的方式获取,切片需要在中括号[ ]中填入两个数字,中间用冒号分开,表示子串的开始位置和结束位置,并且这是左闭右开区间,不包括最后的位置。

    [ ]填写2个数字,表示读取num1位到num2位。

     

    ab = s[0:2]  # 取字符串s中的第一个字符到第三个字符,不包括第三个字符

    print(ab) # ==> AB

     

    s = 'ABCDEFGHIJK'

    cdef = s[2:6] # 取字符串s中的第三个字符到第七个字符,不包括第七个字符

     

     

     

     

     

    查看全部
  •  

    因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。

     

     

    为了统一所有文字的编码,Unicode应运而生。Unicode把所有语言都统一到一套编码里

     

    Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。

     

    python3的编码

     

    在python3中,默认使用UTF-8 Unicode来进行编码,因此我们可以在python中输入任意形式的Unicode字符串,都不会遇到像python2中遇到的问题(在python2中,需要显式指明该字符串是Unicode字符串),

     

    在python3中,中文字符串和英文字符串无异。

     

     

     

     

    查看全部
  •  

    不固定字符串:format——字符串是Python程序重要的数据类型,到目前为止,我们输出的字符串的内容都是固定的,但有时候通过字符串输出的内容不是固定的,这个时候需要使用format来处理字符串,输出不固定的内容。

     

    字符串format由两个部分组成:字符串模板、模板数据内容组成,通过大括号{},就可以把模板数据内容嵌到字符串模板对应的位置。

     

     format()必须是填充字符串,要么先定义好字符串,要么直接用引号括住填充内容。

     

     

     

     

    指定模板数据内容顺序:{}中加数字序号——如果模板中{}内容比较多,则容易错乱,那么在format的时候也可以指定模板数据内容的顺序。

     

    template = 'Hello {0}, Hello {1}, Hello {2}, Hello {3}.'

    result = template.format('World', 'China', 'Beijing', 'imooc')

    print(result)

    输出结果:

    Hello World, Hello China, Hello Beijing, Hello imooc.

     

    template = 'Hello {3}, Hello {2}, Hello {1}, Hello {0}.'

    result = template.format('World', 'China', 'Beijing', 'imooc')

    print(result)

    输出结果:

    Hello imooc, Hello Beijing, Hello China, Hello World.

     

    除了使用顺序,还可以指定对应的名字,使得在format过程更加清晰。

    template =r''' Hello {w},

    Hello {c},

    Hello {b},

    Hello {i}. '''

    world = 'World'

    china = 'China'

    beijing = 'Beijing'

    imooc = 'imooc'

     

     

    result = template.format(

         w = world,

        c = china,

        b = beijing,

        i = imooc )

    print(result)

     

     

     

    template =r'''

    life is {a},

    you need {b} '''

     

    short ='short'

    enjoy ='enjoy'

     

    result = template.format(

         a = short,b = enjoy)

    print(result)

     

     

     

     

     

    查看全部
  • raw字符串—— r'… ' 或者 r'''… '''

    如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀 r,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如:r' \(~_~)/ \(~_~)/ '

     

    但是 r' … ' 表示法不能表示多行字符串,也不能表示包含 ' 和  " 的字符串。

     

     

    如果要表示多行字符串,可以用 '''...''' 表示:

    '''Line 1
    Line 2
    Line 3'''

     

    ''' ….'''  字符串的表示方法和“单引号+\n”的是完全一样的:'Line 1\nLine 2\nLine 3'

     

     

    还可以在多行字符串前面添加 r,把这个多行字符串也变成一个raw字符串:

    r''' Python is created by "Guido".
    It is free and easy to learn.
    Let's start learn Python in imooc! '''

     

     

     

    两种表示内容有“引号和换行”的语句——转义符 or raw字符串

    '\"To be, or not to be\": that is the question.\nWhether it\'s nobler in the mind to suffer.'

     

    print(r''' "To be, or not to be": that is the question.

    Whether it's nobler in the mind to suffer. ''')

     

     

     

     

    查看全部
  •  

    字符串可以用 ' ' 或者 " " 括起来表示。

     

    对于字符串本身内容有引号的情况,内容中是单引号,可以使用双引号来括起来字符串;内容钟是双引号

     

     

    如果字符串本身包含 ' 怎么办?比如我们要表示字符串 I'm OK ,这时,可以用 " " 括起来表示:" I'm OK " 

     

    类似的,如果字符串包含 ",我们就可以用 ' ' 括起来表示:' Learn "Python" in imooc '

     

     

     

    如果字符串既包含 ' 又包含 " ,,就需要对字符串中的某些特殊字符进行“转义”,Python字符串用 \ 进行转义。

     

    由于 ' 和 " 会引起歧义,因此,我们在引号前面插入一个 \ ,表示引号是一个普通字符,不代表字符串的起始。转义字符\不计入字符串的内容中。

     

    ' Bob said  \" I \'m OK \" . '

     

     

    常用的转义字符还有:

    \n 表示换行

    \t  表示一个制表符

    \\ 表示 \ 字符本身

     

     

     

     

     

     

    查看全部
    0 采集 收起 来源:Python的字符串

    2021-01-18

  •  

     

    布尔类型只有True和False两种值

     

    与运算

    只有两个布尔值都为 True 时,计算结果才为 True。

     

    或运算

    只要有一个布尔值为 True,计算结果就是 True。

     

    非运算

    把True变为False,或者把False变为True:

     

    条件判断,执行不同后续代码——这些运算有什么用呢?计算机程序是由无数的逻辑分支组成的,通过布尔运算,可以在计算机中实现条件判断,根据计算结果为True或者False,计算机可以自动执行不同的后续代码

     

     

     

    多种数据类型一起,可以做布尔逻辑运算——

    在Python中,布尔类型还可以与其他数据类型(字符串,数字等)做 and、or和not 运算

     

    数字/字符串的布尔类型:因为Python把0、空字符串和None看成False,其他数值和非空字符串都看成True

     

     

    True and 0计算结果是0

    继续计算0 or 99计算结果是 99

    结果是99

     

     

    与或非运算优先级别——非最高:not计算的优先级是高于and和or的

     

    True and not False # ==> True

     

     

    短路计算

     

    Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果

     

    1,在计算a and b时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

    2,在计算a or b时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

     

     

    运算优先级别:布尔运算 > 四则运算

     

     

     

     

     

    查看全部
  •  

    在Python中,整数和浮点数虽然属于不同的数值类型,但是在运算上是可以一起运算的

     

    整数、浮点数可以直接进行四则运算。

     

    整数和浮点数运算后 ,得到的结果不管小数点后是否有值,结果都变成浮点数

     

     

    除法:精确除

    注意:在使用除法,Python2可能和Python3得到不一样的结果

     

    在python2:只取商,得到的是一个整数的结果,这是因为除数和被除数都是整数时,得到的结果也默认保存为整数了,这是非常不科学的。

    在python3:取精确值,改进了这一点。Eg. 10/3=3.3333333…5,整数相除也可以输出浮点数格式的精确值。

     

     

     

     

     

     

     

     

    取模运算 MOD

    Python数字支持取模运算,使用百分号%表示取模。

     

    判断奇偶:恰当使用取模运算,可以判断一个数是否为偶数,当一个数对2取模结果为0时,则这个数为偶数,否则为奇数。

     

     

    print(33 % 2) # ==> 1 因此33为奇数
    print(100 % 2) # ==> 0 因此100为偶数

     

    地板除://

     

    Python除了普通除法以外,还有一个特殊的除法被称为地板除,对于地板除,得到的结果会忽略纯小数的部分,得到整数的部分,地板除使用//进行。

    地板除是只取商整数,不四舍五入。在python3里面用来代替之前2.7版本的除法/ 。

     

    地板除的格式,由除数与被除数决定。若有一个是浮点数,则地板除是浮点数,否则是整数。

     

     

     

     

     

     

    小数点位数:round(index,save num)

    使用Python计算小数的时候,经常需要保留小数点后若干位,可以使用round()函数来处理,这里先了解round的调用方式,使用两个参数,第一个是需要保留小数点位数的数值,第二个是保留的位数。

     

     

     

     

    查看全部
  •  

    a=1

    print(a)

     

    a='hello'

    print(a)

     

    a=1.34

    print(a)

     

    a= not 1==2

    print(a)

     

    a= 1==1

    print(a)

     

    a= (1==1 and 2==2)

    print(a)

     

     

    运行成功

    1
    hello
    1.34
    True
    True
    True
     

     

    变量不仅可以是数字,还可以是任意数据类型(字符串、布尔值、空值、字典等)。

     

    1. 变量名由大小写英文字母、数字和下划线_组成

    2. 变量不能用数字开头

    3. 变量尽量不要和Python关键字重合(比如前面学习过的:and、or、not,否则可能导致Python原有关键字发挥不出作用)

     

    以下这些变量的定义都是合法的。num, count, _none, min_value,他们都满足上面的三个条件。

     

    以下这些变量的定义都是不合法的。1num, 666, 1_cd, and

     

    定义变量

    定义变量的方式很简单,通过  变量名 = 数据,即可定义一个变量。

     

     

    Python这类语言特有的特性,我们称之为动态语言——

    在Python里面,一个变量可以先后存储多种不同类型的数据。

     

     

    与之对应的是静态语言,Python、Javascript等等都是动态语言,Java、C、C++等等属于静态语言。

     

     

    python没有中文字符,无法打印输出

     

     

    不同变量类型不能通过加号连接后输出

     

     

    正确输出:同样变量类型,如同为str

     

     

     

    ,:分隔符

    当print()里面是没有引号时,如果“有,分隔符”,则输出的内容中,“,是相当于一个空格”

     

     

     

    查看全部
  •  

     

    整数运算永远是精确的,浮点数则可能有四舍五入的误差。

     

    \+':\是转义符,后面的第一个'可以显示,如print('what\'s'),输出是what's

     

    print('\'aa\''):'aa'

     

     

    整数

    在计算机中也常用二进制或者十六进制表示整数。相比十进制数,在Python中使用以下方式表示二进制数和十六进制数。

     

    二进制数只使用数字0、1表示,在Python中,二进制整数使用前缀

    0b表示,比如:

    0b0110,

    0b1100。

    十六进制数除了0~9十个数字以外,还使用a、b、c、d、e、f,在Python中,十六进制使用前缀

    0x,比如:

    0x12ef,

    0xde2431af。

     

     

    浮点数

     

    按照科学记数法表示时,一个浮点数的小数点位置是可变的(浮动的),比如,

    1.23x10^9和

    12.3x10^8是相等的,因此称为浮点数。

     

    整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差

     

    python3.5版本以下,print(0.1+0.2==0.3):输出结果是 False。0.1+0.2=0.3.......4

    然而,3.6版本以上,是True

     

     

    字符串

     

    字符串对应生活中的就是非数字类型的内容,比如一个句子,一段话,在Python中就是字符串,在Python中,字符串必须是以''或""括起来的任意文本,比如'abc',"xyz"等等。

     

    ''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符。

    如果没有单/双引号括起来,则报错(no define index)

     

     

    布尔值

    在Python中,可以直接用True、False表示布尔值(请注意大小写,首字母大写,不需要使用字符串符号括起来),也可以通过布尔运算计算出来

     

    print(True):输出是 True

     

     

    布尔值可以用and、or和not运算(注意and,or,not都是Python语言本身的关键字)。

    这三个关键字的前后要保留空格,不可直接接触前后内容。

     

    not运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。

     

    print(1+1==2 and 2==2):输出结果 True

     

     

    空值

    空值是Python里一个特殊的值,用None表示。

     

    注意,None和0是不一样的,None不能理解为0,因为0是有意义的,None是一个特殊的空值。

     

     

    此外

    Python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型

     

    查看全部
  • http://img1.sycdn.imooc.com//60046c7400013d1013180264.jpg

    r表示raw字符串,无需再进行转义操作

    '''xxx'''表示多行字符串,像写文本一样

    查看全部
  • \表示转义符

    \n表示换行符

    \t表示制表符

    \\表示\本身

    查看全部
    0 采集 收起 来源:Python的字符串

    2021-01-18

  • python中,与(and)或(or)非(not)

    python中把0,空字符串与None看成false,

    因此,a=True,print(a and 0 or 99) # ==> 99

    python中,not的优先级高于and和or

    查看全部
  • print(hello world)
    查看全部
  • 子串

    str[x:y]表示从字符串str的第x+1个字符开始到y个字符组成的子串

    查看全部
  • # 字符串模板
    template = 'Hello {}'
    # 模板数据内容
    world = 'World'
    result = template.format(world)
    print(result) # ==> Hello World

    如果模板中{}比较多,则容易错乱,那么在format的时候也可以指定模板数据内容的顺序。

    # 指定顺序
    template = 'Hello {0}, Hello {1}, Hello {2}, Hello {3}.'
    result = template.format('World', 'China', 'Beijing', 'imooc')
    print(result) # ==> Hello World, Hello China, Hello Beijing, Hello imooc.
    # 调整顺序
    template = 'Hello {3}, Hello {2}, Hello {1}, Hello {0}.'
    result = template.format('World', 'China', 'Beijing', 'imooc')
    print(result) # ==> Hello imooc, Hello Beijing, Hello China, Hello World.

    除了使用顺序,还可以指定对应的名字,使得在format过程更加清晰。

    # 指定{}的名字w,c,b,i
    template = 'Hello {w}, Hello {c}, Hello {b}, Hello {i}.'
    world = 'World'
    china = 'China'
    beijing = 'Beijing'
    imooc = 'imooc'
    # 指定名字对应的模板数据内容
    result = template.format(w = world, c = china, b = beijing, i = imooc)
    print(result) # ==> Hello World, Hello China, Hello Beijing, Hello imooc.


    查看全部

举报

0/150
提交
取消
课程须知
如果您了解程序设计的基本概念,会简单使用命令行,了解中学数学函数的概念,那么对课程学习会有很大的帮助,让您学起来得心应手,快速进入Python世界。
老师告诉你能学到什么?
通过本课程的学习,您将学会搭建基本的Python开发环境,以函数为基础编写完整的Python代码,熟练掌握Python的基本数据类型以及list和dict的操作,灵活使用流程控制语句。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!