我正在做一个程序,将基数10中的数字更改为基数7,所以我这样做了:
num = int(raw_input(""))
mod = int(0)
list = []
while num> 0:
mod = num%7
num = num/7
list.append(mod)
list.reverse()
for i in range (0,len(list)):
print list[i],
但如果数字为210则打印4 2 0我如何摆脱空格
答案 0 :(得分:5)
您可以使用与列表理解的连接:
>>> l=range(5)
>>> print l
[0, 1, 2, 3, 4]
>>> ''.join(str(i) for i in l)
'01234'
此外,不要将list
用作变量名称,因为它是内置函数。
答案 1 :(得分:1)
看看sys.stdout
。它是一个文件对象,包装标准输出。每个文件都有write
方法,它接受字符串,并直接将它放到STDOUT。它也不会改变或添加任何字符,因此当您需要完全控制输出时它很方便。
>>> import sys
>>> for n in range(8):
... sys.stdout.write(str(n))
01234567>>>
注意两件事
此外,了解您使用的构造非常方便:
for i in range (0,len(list)):
print list[i],
相当于(坦率地说更有效率):
for i in list:
print i,
答案 2 :(得分:0)
使用list_comprehension。
num= int(raw_input(""))
mod=int(0)
list =[]
while num> 0:
mod=num%7
num=num/7
list.append(mod)
list.reverse()
print ''.join([str(list[i]) for i in range (0,len(list))])
答案 3 :(得分:0)
将列表转换为字符串,并替换空格。
strings = ['hello', 'world']
print strings
>>>['hello', 'world']
print str(strings).replace(" ", "")
>>>['hello','world']
答案 4 :(得分:0)
在Python3中为我做以下工作
describe('API Throws Errors', () => {
beforeEach(() => {
// axios.get.mockImplementation(() => Promise.reject('rejected'));
jest.mock('axios', () => ({
get: jest.fn().mockReturnValue(Promise.reject('error'))
}));
});
it('get fails', async () => {
await expect(() => {
API.get(GROUPS.url());
}).rejects.toEqual('error');
});
afterEach(() => {
jest.clearAllMocks();
});
});
答案 5 :(得分:0)
print() 函数有一个参数来指定结束字符,默认情况下是 '\n'。将结束字符指定为 '' 并使用循环打印将满足您的要求:
n_list = [1,2,3,4,5]
for i in n_list:
print(i, end='')
答案 6 :(得分:0)
你可以使用下面的python3代码片段
print(*list(range(1, n + 1)), sep='')
*
将删除开头和结尾字符,如 [{}]
sep = ''
将删除项目之间的空格。答案 7 :(得分:-1)
s = "jay"
list = [ i for i in s ]
打印list
会得到:
['j','a','y']
new_s = "".join(list)
如果您打印new_s
:
“杰伊”