Python03 字符串类型、强制类型转化、列表、元组、字典、集合
1 字符串类型
在python中字符串类型用str表示,字符串的连接用 +
1.1 创建字符串对象
·创建一个字符串对象有两种方式,一种方式是直接用字符串进行赋值,另外一种是利用str类实例化对象;具体格式如下:
a = str("warrior") print("变量a的值为:", a) print("变量a的类型为:", type(a))
b = "fury" print("变量的值为:", b) print("变量b的类型为:", type(b))
1.2 字符串对象常用的方法
1.2.1 title()
返回原字符串中的所有单词的首字母大写后的的字符串,常用于标题的显示
def title(self): # real signature unknown; restored from __doc__ """ S.title() -> str Return a titlecased version of S, i.e. words start with title case characters, all remaining cased characters have lower case. """ return ""
1.2.2 upper()
将字符串全部转化成大写,数据在存储前通常先转化成大写或者小写在存储,显示时再转化成想要的格式进行输出
def upper(self): # real signature unknown; restored from __doc__ """ S.upper() -> str Return a copy of S converted to uppercase. """ return ""
1.2.3 isupper()
判断字符串是否全部都是大写
def isupper(self): # real signature unknown; restored from __doc__ """ B.isupper() -> bool Return True if all cased characters in B are uppercase and there is at least one cased character in B, False otherwise. """ return False
1.2.4 casefold()
在对量个字符串进行比较的时候如果不区分大小写时需要用到
def casefold(self): # real signature unknown; restored from __doc__ """ S.casefold() -> str Return a version of S suitable for caseless comparisons. """ return ""
1.2.5 center()
字符串输出填充用的
def center(self, width, fillchar=None): # real signature unknown; restored from __doc__ """ S.center(width[, fillchar]) -> str Return S centered in a string of length width. Padding is done using the specified fill character (default is a space) """ return ""
1.2.6 strip()
去掉字符串两边的空白
def strip(self, chars=None): # real signature unknown; restored from __doc__ """ S.strip([chars]) -> str Return a copy of the string S with leading and trailing whitespace removed. If chars is given and not None, remove characters in chars instead. """ return ""
1.3 小练习
1.3.1 姓名格式化
需求:将用户输入的姓名存到一个变量中,并向该用户显示一条消息。显示的消息应非常简单,如“Hello XXX, would you like to learn some Python today?”;要求用户的姓名在进行输出时必须是每个单词首字母大写。
拓展:姓名分别一小写、大写显示
1.4 格式化
字符串在进行输出时常常需要进行一些格式化,这样可以提高代码的可读性,在Python中支持两种格式化方法
1.4.1 利用占位符实现
技巧01:如果不确定该用那种占位符,用%s永远都会起作用
这种方法的和C语言类似,常见的占位符有
%d -> 整数
%f -> 浮点数
%s -> 字符串
%x -> 十六进制整数
技巧02:整数可以设定整数位数,浮点型可以设置小数位数
如果传入的数字不够指定位数时默认用空格代替或者指定用0代替
1.4.2 利用字符串格式化函数实现
format是python字符串类型中的一个字符串格式化函数
def format(self, *args, **kwargs): # known special case of str.format """ S.format(*args, **kwargs) -> str Return a formatted version of S, using substitutions from args and kwargs. The substitutions are identified by braces ('{' and '}'). """ pass
2 强制类型转化
“123” + 4 这样的表达式有两层意思:一层是将4看成是字符串,+ 进行字符串的拼接;另外一层是将“123”看成整型,+ 进行数学运算;在python3中会理解成前面一种,但是python3会检测到错误,因为python3在利用 + 进行字符串的拼接操作时两边必须都是字符串类型,否则会报类型错误:
2.1 强制类型转化的格式
数据类型(带转化的数据)
2.2 小练习
2.2.1 计算圆的周长、面积
需求:手动输入圆的半径,自动计算出圆的直径、周长、面积
3 列表
列表由一系列按特定顺序排列的元素组成。可以将任何东西加入列表中,其中的元素之间可以没有任何关系。
3.1 列表表示
在Python中,用方括号([])来表示列表,并用逗号来分隔其中的元素。
list = ['warrior', 'fury', 123, ['peter', 'bob']] print(list)
3.2 访问列表元素
列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。 要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。
技巧01:列表的索引好是从0开始的
技巧02:请求获取列表元素时,Python只返回该元素,而不包 括方括号和引号
技巧03:通过将索引指定为-1,可让Python返 回最后一个列表元素
3.3 小练习01
3.3.1 依次访问列表元素
需求:创建一个名为students的学生列表,该列表中国存放的是学生的姓名,依次访问学生列表中的所有元素并进行格式化输出
students = ["warrior", "peter", "bob", "zeus"] for i in students: print(i.title())