欢迎关注,敬请点赞!
找不同——javaScript和python不同点
【摘要】
python和JavaScript是当前使用最频繁的2种脚本语言,从实现10进制转8进制看它们的不同点。
python代码
# 10进制转8进制,“除8取余,逆序书写”
n = 80
n_8 = '' # 空字符串用于存余数
while n:
n, y = divmod(n, 8) #除8取余
n_8 += str(y) # 正序书写
n_8 = list(n_8) # 转列表
n_8.reverse() # 逆序
n_8 = '0o' + ''.join(n_8) # 拼接
print(n_8)
JavaScript代码
<script type="text/javascript">
var n = 80
var n_8 = ''
while (n) {
// toString()函数将数字转化为字符串
var mod = (n % 8).toString()
n_8 += mod
// parseInt()函数取整
n = parseInt(n / 8)
}
// 转数组(列表) 逆序 拼接
n_8 = '0o' + n_8.split('').reverse().join('')
console.log(n_8)
</script>
项目 | python | javascript |
---|---|---|
变量声明 | 不需要 | 必须声明,格式为:let i=0;或var i=0,后者无局部作用域 |
单行注释 | 用 # | 用// |
多行注释 | 不支持,通常变通为不赋值的多行字符串,即三对引号 ‘’’…’’’ | 多行用/* */ |
取商数 | 用双除号// | 不支持,//表示注释 |
代码块 | 用4个空格缩进 | 用花括号{} |
while循环 | while xxx: | while(){} |
赋值表达式 | 无值None | 有值 |
总结
python在求模取余时一气呵成,但因赋值表达式无值,转列表、逆序、拼接不能像JavaScript一气呵成。