Python中的字符串,我们可以简单的认为是一组用单引号,双引号,三引号包含的一组字符,数字或者特殊字符。在Python3中,所有的字符串都是Unicode字符串。

  • 变量定义
#单引号
string1 = 'abc'
#双引号
string2 = "def"
#三引号,文字可以换行
string3 = ''' 我可以
随便
换行
'''
print(string1)
print(string2)
print(string3)
  • 常规操作符

    对与字符串我们可以进行拼接,截取,重复,判断,格式化等操作。python中常规的操作符有如下几种:

  

操作符 描述
+ 字符串连接,将多个字符串连接成一个字符串
* 重复输出字符串内容
[] 通过索引获取字符串中的部分内容
[ : ] 使用start:end的方式截取字符串中的一部分内容,遵循左闭右开原则,str[0,5] 是不包含第 5 个字符的,取前四个内容。
in 成员运算符 - 如果字符串中包含给定的字符返回 True
not in 成员运算符 - 如果字符串中不包含给定的字符返回 True
r/R 原始字符串 - 所有的字符串都是定义的值来显示,转译符和特殊字符不会被转译。
% 格式字符串,根据定义的格式输出字符串

  字符串连接:使用"+",将多个字符串连接成一个字符串.

string1 = 'abc'
string2 = "def"
string3 = '''gh
ijk
'''
print(string1 + string2 + string3) #输出 abcdefgh
#ijk

  重复输出:重复输出字符串内容。

string1 = 'abc'
string2 = "def"
string3 = '''gh
ijk
'''
print(string1 * 2)
#输出:abcabc print(string1 * len(string2))
#输出: abcabcabc

  索引取值:使用[]字符,通过索引获取字符串中的部分内容。注意索引正向是从 0 开始的,如果取值超过索引范围会报系统错误。索引也可以是是负数,表示反向取值。

string1 = 'abc'
string2 = "def"
string3 = '''gh
ijk
'''
print(string1[2])
#输出:c print(string1[-3])
#输出:a print(string1[3])
#输出: IndexError : string index out of range

  范围取值: 使用[start:end]的形式,取字符串的部分内容,遵循左闭右开原则,str[0,5] 是不包含第 5 个字符的,取前四个内容。还可以使用[start:end:step]的形式获取内容,意思是从start到end位置,每隔step个取一个字符。

string1 = 'abc'
string2 = ""
string3 = '''gh
ijk
'''
print(string1[0:2])
#输出:ab print(string1[0:10])
#输出:abc print(string1[0:-2])
#输出: a , -2表示倒数第二个字符,即 'b' print(string2[0:10:2])
#输出:13579

  成员运算符: 判断主字符串是否包含子字符串,返回True or False。

string1 = 'abc'
string2 = ""
string3 = '''gh
ijk
'''
print('a' in string1)
#输出:True print('d' not in string1)
#输出:True print(string1 in string2)
#输出: False print("d" in string2)
#输出:False

  原始字符串: r/R + “” 用来显示原始定义的字符,转译符也将作为普通字符来显示。

string1 = 'abc'
string2 = ""
string3 = '''gh
ijk
'''
string4 = r"display original chanter \n"
string5 = R"\t \\"
print(string4)
#输出:display original chanter \n print(string5)
#输出:\t \\

  格式字符串:使用%来格式化输出想要的字符类型:

  

 符   号 描述
      %c  格式化字符及其ASCII码
      %s  格式化字符串
      %d  格式化整数
      %u  格式化无符号整型
      %o  格式化无符号八进制数
      %x  格式化无符号十六进制数
      %X  格式化无符号十六进制数(大写)
      %f  格式化浮点数字,可指定小数点后的精度
      %e  用科学计数法格式化浮点数
      %E  作用同%e,用科学计数法格式化浮点数
      %g  %f和%e的简写
      %G  %f 和 %E 的简写
      %p  用十六进制数格式化变量的地址

  

string1 = 'abc'
string2 = ""
int_num = 10 print("string4 is %s" % string1)
#输出:string4 is abc print("string4 is %d" % int_num)
#输出:string4 is abc

  我们也可以使用 format关键字进行格式化,注意点“.”不要遗漏了

  

name = 'ralf'
age = 35 print("name is {var_name} and age is {var_age}".format(var_name = name, var_age = age))
#输出: name is ralf and age is 35

Python 学习笔记4 变量-字符串的更多相关文章

  1. 【python学习笔记】3.字符串使用

    [python学习笔记]3.字符串使用 字符串是一种序列,素有标准的序列操作对字符串用样适用,字符串是不可以改变 格式化操作符,%,左侧是格式化字符串,右侧是被格式的值,可以是一个值.元组.字典 数值 ...

  2. python学习笔记(二)、字符串操作

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...

  3. python学习笔记20(字符串格式化)

    Python中内置有对字符串进行格式化的操作% 模板 格式化字符串时,Python使用一个字符串作为模板.模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式.Python用一个t ...

  4. Python 学习笔记2 变量

    Python变量的一些命名规则和指南 每种编程语言都需要变量, 这些变量的命名,我们一般会遵守一些公认的规则. 已达到方便自己,他人阅读的好处. 变量只能包含字母.数字和下划线.变量可以以字母和下划线 ...

  5. Python学习笔记5(字符串与正则表达式)

    1.字符串 1.1字符串的格式化 #格式化语法 "%s" % str1 "%s %s" % (str1,str2) #格式化字符串 str1 = "v ...

  6. Python学习笔记 (2) :字符串输出、操作、格式化和日期、时间格式化

    一.字符串输出及运算 1.常用输出格式及方法 ')#单引号 ")#双引号 """)#三个引号 1234567890 1234567890 1234567890 ...

  7. 小甲鱼:Python学习笔记001_变量_分支_数据类型_运算符等基础

    1.下载并安装Python 3.5.0 Python是一个跨平台语言,Python从3.0的版本的语法很多不兼容2版本,官网找到最新的版本并下载:http://www.python.org 2.IDL ...

  8. Python 学习笔记6 变量-字典

    字典是python中一个十分重要的变量,他是一个可变的容器对象.通过一组key(键)和value(值)对组成一个元素. 组成形式为{'key':'value', 'key':'value'}.整个字典 ...

  9. Python 学习笔记5 变量-列表

    列表是python常用的一种变量. 是由一些列按照特定顺序排列的元素组成的.你可以创建包含字母表中的所有字母,数字.可以将任何东西都加入到列表中. 通常情况下,列表中都包含多个元素,所以建议变量的名称 ...

随机推荐

  1. if判断中的true和false

    真值指的是在 布尔值 上下文中转换后(使用强制类型转换)的值为真的值.所有值都是真值,除非它们被定义为 falsy (即除了 false,0,"",null,undefined 和 ...

  2. percona-toolkit 之 【pt-online-schema-change】说明【转】

    背景: MySQL 大字段的DDL操作:加减字段.索引.修改字段属性等,在5.1之前都是非常耗时耗力的,特别是会对MySQL服务产生影响.在5.1之后随着Plugin Innodb的出现在线加索引的提 ...

  3. 【全网最全的博客美化系列教程】08.自定义地址栏Logo

    全网最全的博客美化系列教程相关文章目录 [全网最全的博客美化系列教程]01.添加Github项目链接 [全网最全的博客美化系列教程]02.添加QQ交谈链接 [全网最全的博客美化系列教程]03.给博客添 ...

  4. [ZJOI2008]树的统计-树链剖分

    #include<bits/stdc++.h> using namespace std; const int maxn = 1e6+5; #define mid ((l+r)>> ...

  5. 【原创】大叔经验分享(17)编程实践对比Java vs Scala

    scala 官方地址 https://www.scala-lang.org/ 本文尽可能包含了一些主要的java和scala在编程实践时的显著差异,展现scala的代码的简洁优雅:scala通吃< ...

  6. 《剑指offer》连续子数组的最大和

    本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:

  7. 如何连接LINUX服务器

    1.WINDOW下连接 使用PUTTY连接,链接如下:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 下载安装后打开,运行 ...

  8. 安装Pycharm——靠谱的Pycharm安装详细教程

    1.首先去Pycharm官网,或者直接输入网址:http://www.jetbrains.com/pycharm/download/#section=windows,下载PyCharm安装包,根据自己 ...

  9. c++ typeid

    简单使用 #include<iostream> #include<string> #include<new> #include<typeinfo> us ...

  10. .NET Core 添加Java 服务引用(WebService) 曲折历程(一)

    背景: 需要在HangFire定时任务中加入请求Java开发的WebService接口.定时获取数据同步数据.现有的代码是在VS2017 ,.Net Core 下创建的,添加WS发现系统不支持. 在C ...