甜萝 发表于 2024-5-7 00:03

输出阿拉伯数字 从0-9

本帖最后由 paypojie 于 2024-5-7 00:07 编辑

闲来无事 写一段代码给大家瞅瞅 下面的代码将使用不同的方式来输出数字0-9

最笨的实现方式
```
print(0,end=' ')
print(1,end=' ')
print(2,end=' ')
print(3,end=' ')
print(4,end=' ')
print(5,end=' ')
print(6,end=' ')
print(7,end=' ')
print(8,end=' ')
print(9,end=' ')
```
最简洁的实现方式之数字实现
```
print(0,1,2,3,4,5,6,7,8,9)
```
最简洁的实现方式之字符串实现
```
print('0 1 2 3 4 5 6 7 8 9')
```
用列表实现的方式
```
list_num =

for i in list_num:
    print(list_num,end=' ')
```
用for循环实现的方式
```
for i in range(10):
    print(i,end=' ')
```
用while True的这种实现方式
```
i = 0
while i < 10:
    print(i,end=' ')
    i += 1
```
除了以上方式 大家还有什么其它花哨的方式来输出数字0-9? 吾爱大神众多 想观摩观摩大神们的写法

jiaotong 发表于 2024-5-7 00:21

使用递归方式实现
def print_numbers(n):
    if n < 10:
      print(n, end=' ')
      print_numbers(n + 1)

print_numbers(0)

wkfy 发表于 2024-5-7 08:15

for i in range(48, 58):
    print(chr(i),end=' ')

rhtk1 发表于 2024-5-7 08:49

牛人真多啊。

QvQsuipian 发表于 2024-5-7 08:58

# 将列表中的每个元素转换为字符串,并使用空格将它们连接起来,然后一次性打印出来
print(' '.join(str(i) for i in range(10)))

# map() 函数可以将一个函数应用于一个可迭代对象的所有元素
print(' '.join(map(str, range(10))))

# 生成器表达式与列表推导式类似,但它们在内存中更节省,因为它们按需生成值
print(' '.join(str(i) for i in (x for x in range(10))))

# 在 print() 函数中,你可以使用 * 运算符来解包一个列表的元素,但是为了打印出空格,你还需要另外处理。
# 这里可以用一个小技巧:使用一个包含空格的字符串列表
print(*(str(i) + ' ' for i in range(10)), end='')

# 使用 f-string 来格式化每个数字
print(' '.join(f'{i}' for i in range(10)))

from functools import reduce

# functools.reduce() 和一个累加器函数来打印数字
def print_with_space(acc, x):
    print(acc, end=' ')
    return str(x)
reduce(print_with_space, range(11), '')# 注意这里的初始值是空字符串,但不会被打印

# itertools.chain() 通常用于合并多个可迭代对象,但你也可以用它来“链接”单个可迭代对象
from itertools import chain
print(' '.join(map(str, chain(range(10)))))

kuo24678 发表于 2024-5-7 09:27

楼主厉害啊

JuncoJet 发表于 2024-5-7 09:36

print each

mlwnl 发表于 2024-5-7 09:37

有点意思

Pythoner 发表于 2024-5-7 09:53

list(map(print, range(10)))

甜萝 发表于 2024-5-7 11:46

jiaotong 发表于 2024-5-7 00:21
使用递归方式实现
def print_numbers(n):
    if n < 10:


思路清晰 {:1_921:}
页: [1] 2
查看完整版本: 输出阿拉伯数字 从0-9