python,表达式'66'+'2'*3的值是什么,怎么算呀,搜了半天还是不太懂
https://ask.csdn.net/questions/7966681?spm=1001.2014.3001.5501
很简单啊,这是字符串相加,不是整数。'66'是字符串66,然后'2' * 3就是字符'2'重复3次,不是整数相乘,最后两个串连接起来就是66222
字符串处理中+号是字符串连接,* 号是字符串重复n次
程序代码:
a = []
for x in range(100):
if x <2:
continue
for i in range(2,x):
if x % i == 0:
break
else:
a.append(x)
print(a)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/03.py
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
进程已结束,退出代码0
问题解答:
根据参考资料中的“段落1”,可以知道Python中的号有重复字符串的作用,而且在此问题中,字符串的拼接优先级高于加法运算,所以可以先计算'2'3,得到字符串'222',然后将'66'与'222'拼接,得到最终结果'66222',具体操作如下:
result = '66' + '2'*3
print(result) # 输出'66222'
因此,问题得到了解答。