- images
- results
- .gitignore
- 1.1概论.ipynb
- 1.2 环境配置.pdf
- 1.3数据类型.ipynb
- 1.4 人机交互.ipynb
- 1.5 对象与变量.ipynb
- 1.6 编码与命名规范.ipynb
- 2.1 数值类型.ipynb
- 2.2 数值类型转换.ipynb
- 2.3 数值元算.ipynb
- 2.4常用数学运算函数.ipynb
- 2.5 math 模块及其应用.ipynb
- 2.6.1 逻辑值测试.ipynb
- 2.6.2 成员运算.ipynb
- 2.6.3 比较运算.ipynb
- 2.6.4 布尔运算.ipynb
- 2.6.5 运算优先级.ipynb
- 2.ipynb
- 3.1 流程控制结构.ipynb
- 3.3.1 for 循环语句.ipynb
- 3.3.3 rang.ipynb
- 3.3.3 while 循环语句.ipynb
- 3.4 and 3.5 分支结构和条件.ipynb
- 3.6 and 3.7 .ipynb
- 3.9 异常处理.ipynb
- 4 函数和模块化编程.ipynb
- 4.1 函数的定义、调用与返回值.ipynb
- 4.2 函数的参数传递.ipynb
- 4.3 变量的作用域.ipynb
- 4.4 匿名函数.ipynb
- 4.5 递归.ipynb
- 4.6 内置函数.ipynb
- 4.7 模块化程序设计.ipynb
- 5.1 序列通用操作.ipynb
- 5.1.1 索引.ipynb
- 5.1.2 切片.ipynb
- 5.1.3 序列拼接与重复.ipynb
- 5.1.4 成员测试.ipynb
- 5.2.1 字符串的创建.ipynb
- 5.2.2 字符串常量.ipynb
- 5.2.4 字符串的遍历.ipynb
- 5.2.5 文件遍历.ipynb
- 5.2.6 字符串的处理方法.ipynb
- 5.2.7 字符串格式化.ipynb
- 5.2.8 转义字符.ipynb
- 5.3 random 模块及其应用.ipynb
- 6.1 元组.ipynb
- 6.2 列表.ipynb
- 6.2.1 列表的创建.ipynb
- 6.2.2 列表的更新.ipynb
- 6.2.3 列表的删除.ipynb
- 6.2.4 列表的排序.ipynb
- 6.2.5 列表赋值与复制.ipynb
- 6.2.6 列表推导式.ipynb
- 6.2.8 常用内置函数.ipynb
- 6.2.9 列表嵌套及其排序.ipynb
- 6.3 列表综合应用.ipynb
- 7.1.1 集合的创建.ipynb
- 7.1.2可变集合类型的操作.ipynb
- 7.1.3 成员关系.ipynb
- 7.1.4 集合关系.ipynb
- 7.1.5 集合运算.ipynb
- 7.2.1 字典创建.ipynb
- 7.2.2 获取字典值.ipynb
- 7.2.3 修改字典值.ipynb
- 7.2.4内置函数与方法.ipynb
- 7.2.5字典排序输出.ipynb
- 7.3 集合与字典的应用.ipynb
- 8 中 numpy 概述.ipynb
- 8 中panda 库.ipynb
- 8.1 文件的打开与关闭.ipynb
- 8.2 文件读写操作.ipynb
- 8.3 文件的应用.ipynb
- 8.4 numpy 文件操作.ipynb
- 8.4.2 and 3.ipynb
- 8.5.1 pandas文件读写.ipynb
- 8.5.2 and 3 and 4.ipynb
- 9.1 matplotlib 线性图.ipynb
- 9.1.5 数据文化绘图.ipynb
- 9.2 非线性图.ipynb
- 9.3 词云.ipynb
- _overview.md
- _readme.ipynb
- coding_here.ipynb
- dream.png
- score.txt
- score_total.csv
- 成绩分析综合.json
5.2.1 字符串的创建.ipynb @master — view markup · raw · history · blame
字符串的创建¶
1. 将一个或多个字符放在引号中。¶
用单引号创建的字符串中可以包含双引号
In [3]:
s_string = '这是字符串,允许包含"双引号" '
print(s_string)
用双引号创建的字符串中可以包含单引号
In [6]:
d_string = "这是字符串,允许包含'单引号' "
print(d_string)
用三个引号括起的字符串可以包含单引号、双引号和回车符,即可以保留字符串的格式。
In [7]:
tri_string = '''这是字符串,允许包含"双引号"和'单引号' '''
print(tri_string)
In [4]:
poem = '''
驿外断桥边,寂寞开无主。
已是黄昏独自愁,更著风和雨。
无意苦争春,一任群芳妒。
零落成泥碾作尘,只有香如故。
'''
print(poem)
2. 用 str() 将其他对象转为字符串¶
In [8]:
num_str = str(371) # 整数转字符串
sum_of_cube = 0 # 累加器初值0
for i in num_str: # 遍历字符串中的字符
sum_of_cube = sum_of_cube + int(i)** 3 # 各位上数字的3次方加和
print(sum_of_cube) # 371
3. 读文件生成字符串¶
遍历用open() 函数创建的文件对象,每次循环把其中一行读取为一个以换行符“\n”结尾的字符串。
In [6]:
# 每个循环读取到的数据分别为:
"91.1748\n"
"91.1748\n"
"81.64305\n"
"93.0148
"84.629425\n"
"88.4625\n"
...
"86.8273\n"
"90.89875\n"
"95.95105\n"
"60\n"
若文件中不包含空行,即每次读取的数据都是__非空字符串__的话,可以用float()函数将其转为浮点数:
In [1]:
print(float("91.1748\n")) # 可得到浮点数91.1748,float()函数可自动去除字符串末尾的换行符“\n”
In [2]:
print(float("91.1748\n".strip())) # 也可先用strip()去除字符串末尾的换行符“\n”
In [9]:
total, num = 0, 0 # 总成绩初值为0,成绩数量初值0
with open('images/ch5/sc.txt') as score: # 打开文本文件,创建文件对象命名为score
for line in score: # 遍历文件,每行数据转浮点数累加得到总成绩
total = total + float(line) # 每行数据转浮点数累加得到总成绩
num = num + 1 # 统计成绩数量
avg = total / num # 计算平均成绩
print(round(avg, 2)) # 79.66,保留2位小数
In [6]:
with open('images/ch5/sc.txt') as score: # 打开文本文件,创建文件对象命名为score
score = [float(line) for line in score] # 列表推导式,每行数据转浮点数构建一个列表
avg = sum(score) / len(score) # 计算平均成绩
print(round(avg, 2)) # 79.66,保留2位小数