字符串 、 字符串的格式化表达式、 字符串的常用方法 (meth

2021-07-15  本文已影响0人  秋天丢了李姑娘
运算符 描述
(expressions...),[expressions...], {key: value...}, {expressions...} 绑定或加圆括号的表达式,列表显示,字典显示,集合显示
x[index], x[index:index], x(arguments...), x.attribute 抽取,切片,调用,属性引用
await x await 表达式
** 乘方 5
+x, -x, ~x 正,负,按位非 NOT
*, @, /, //, % 乘,矩阵乘,除,整除,取余 6
+, - 加和减
<<, >> 移位
& 按位与 AND
^ 按位异或 XOR
` `
in, not in, is, is not, <, <=, >, >=, !=, == 比较运算,包括成员检测和标识号检测
not x 布尔逻辑非 NOT
and 布尔逻辑与 AND
or 布尔逻辑或 OR
if -- else 条件表达式
lambda lambda 表达式
:= 赋值表达式

字符串

字符串的格式化表达式

占位符和类型码 说明
%s 转成字符串, 使用 str(x) 函数转换(常用)
%d 转成 十进制的整数(常用)
%o 转成 八进制的整数
%x,%X 转成 十六进制的整数
%e,%E 转成 指数格式的浮点数
%f,%F 转成小数格式的浮点数(常用)
%g,%G 转成指数格式或小数格式的浮点数
%% 转成一个%

写一个程序:
输入一个字符串
输入一个浮点数
输入一个整数
输出: 全为10个字节宽度的字符串如下:
如:
请输入字符串: weimz
请输入浮点数: 3.14
请输入整数: 99
打印如下:
+------------+
| weimz |
| 3.14 |
| 0000000099 |
+------------+

答案见: 05_exercise_format.py

字符串的常用方法 (method)

while 语句

while 真值表达式:
语句块1 (*此部分可能会重复执行)
else:
语句块2

语句嵌套

break 语句

写程序, 任意输入一些正整数, 当输入负数时结束输入,当输入完成后,打印您输入的这些数的和
如:
请输入: 1
请输入: 2
请输入: 3
请输入: 4
请输入: -1
您刚才输入的正整数之和是: 10

打印 1~ 20 的整数, 每行打印 5 个, 打印 四行, 如:
1 2 3 4 5
6 7 8 9 10
...
16 17 18 19 20
# 提示: print() 换行

已知, 局域网的IP 都是: 192.168.0.xxx
写程序,生成 从 192.168.0.1 ~ 192.168.0.254 区间的 254 个 IP 地址

写一个程序,输入三行文字, 按最长的一行, 打印如下图形方框
请输入: hello
请输入: welcome to beijing
请输入: aaaaaaa
打印:
+--------------------+
| hello |
| welcome to beijing |
| aaaaaaa |
+--------------------+
提示: str.center(width)

答案

# 写一个程序,输入三行文字, 按最长的一行, 打印如下图形方框
# 请输入: hello
# 请输入: welcome to beijing
# 请输入: aaaaaaa
# 打印:
# +--------------------+
# |       hello        |
# | welcome to beijing |
# |       aaaaaaa      |
# +--------------------+
# 提示: str.center(width)

s1 = input("请输入:")   # ctrl + d 可以复制当前行
s2 = input("请输入:")
s3 = input("请输入:")

len1 = len(s1)  # 求取字符串的长度
len2 = len(s2)
len3 = len(s3)
# 从上面三个数中,找出最大的一个, 用 mymax 变量绑定
# 方法2, 通用的算法
mymax = len1

if len2 > mymax:
 mymax = len2

if len3 > mymax:
 mymax = len3

# 方法1
# if len1 > len2:
#     # 让 len1 和 len3 再比较
#     if len1 > len3:
#         mymax = len1
#     else:
#         mymax = len3
# else:
#     # 让 len2 和 len3 再比较
#     if len2 > len3:
#         mymax = len2
#     else:
#         mymax = len3
print('最大长度是:', mymax)

# 计算第一行
line1 = '+' + '-' * (mymax +2) + '+'
print(line1)
# 文字的第一行
# 方法1 , 用 str.center 居中文字的第一行
# center_s1 = '| ' + s1.center(mymax) + ' |'

# 方法2 , 用 自己的方法 居中文字的第一行
left_blanks = (mymax - len1) // 2   # 计算左侧的空格数
right_blanks = mymax - len1 - left_blanks   # 计算右侧的空格数
center_s1 = '| ' + ' ' * left_blanks + s1 + ' ' * right_blanks + ' |'
print(center_s1)

# 文字的第二行
center_s2= '| ' + s2.center(mymax) + ' |'
print(center_s2)
# 文字的第三行
center_s3 = '| ' + s3.center(mymax) + ' |'
print(center_s3)

# 打印最后一行
print(line1)
上一篇 下一篇

猜你喜欢

热点阅读