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. 二进制中连续k个1-题解

    原题传送门[>XJOI<]    重要提示:您的等级必须达到三级五段,否则会被一只小猫痛扁 题目描述: 求最小的m,使得m>=n而且m的二进制表示包含至少连续k个1 输入格式: 输入 ...

  2. codeblocks添加编译选项

    -std=c++0x

  3. 2017蓝桥杯第十题(k倍区间)

    #include<iostream> #include<stdio.h> using namespace std; ; ],a[N]; int lowbit(int n){ r ...

  4. Task.Run与Task.Factory.StartNew的区别

    Task是可能有延迟的工作单元,目的是生成一个结果值,或产生想要的效果.任务和线程的区别是:任务代表需要执行的作业,而线程代表做这个作业的工作者. 在.Net 4中,Task.Factory.Star ...

  5. hdu3652 数位dp记忆化搜索

    从未见过的船新版本数位dp,,省去了预处理过程,直接进行计算 #include<bits/stdc++.h> using namespace std; #define ll long lo ...

  6. Git使用七:修改最后一次提交、删除文件和重命名文件

    修改最后一次提交: 在实际开发中,可能会遇到以下两种情景:情景一:版本刚一提交(commit)到仓库,突然想起漏掉两个文件还没有添加(add).情景二:版本刚一提交(commit)到仓库,突然想起版本 ...

  7. element ui table单选框点击全选问题

    <template slot-scope="scope"> <el-radio-group v-model="scope.row.HandleState ...

  8. Conversation function

    通过conversation function可以把类转成任意类型的值 #include <iostream> using namespace std; class Age { priva ...

  9. C++线程中的几种锁

    线程之间的锁有:互斥锁.条件锁.自旋锁.读写锁.递归锁.一般而言,锁的功能越强大,性能就会越低. 1.互斥锁 互斥锁用于控制多个线程对他们之间共享资源互斥访问的一个信号量.也就是说是为了避免多个线程在 ...

  10. c# 读取json文件信息

    两种方法: /// <summary> /// /// </summary> /// <returns></returns> private strin ...