Python 上限法不适用于';没有道理
代码:Python 上限法不适用于';没有道理,python,Python,代码: def solve_the_input(port): port = hex(int(port)) split_result = port.split("0x") split_port = split_result[1] print 'input port is ',split_port split_port.upper() print 'input port is ',split_port return split_port if
def solve_the_input(port):
port = hex(int(port))
split_result = port.split("0x")
split_port = split_result[1]
print 'input port is ',split_port
split_port.upper()
print 'input port is ',split_port
return split_port
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else:
port = solve_the_input(sys.argv[1])
input port is a558
input port is a558
input port is a558
input port is A558
输入
python test.py 42328
实际产出:
def solve_the_input(port):
port = hex(int(port))
split_result = port.split("0x")
split_port = split_result[1]
print 'input port is ',split_port
split_port.upper()
print 'input port is ',split_port
return split_port
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else:
port = solve_the_input(sys.argv[1])
input port is a558
input port is a558
input port is a558
input port is A558
预期产出:
def solve_the_input(port):
port = hex(int(port))
split_result = port.split("0x")
split_port = split_result[1]
print 'input port is ',split_port
split_port.upper()
print 'input port is ',split_port
return split_port
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else:
port = solve_the_input(sys.argv[1])
input port is a558
input port is a558
input port is a558
input port is A558
我不知道为什么upper()方法不能按预期工作。upper方法返回新的大写字符串。所以使用
split_port = split_result[1].upper()
upper方法以大写形式返回新字符串。所以使用
split_port = split_result[1].upper()
几点
return未分配回split\u port.upper()
split\u port
- 无需在
上拆分。您可以改用'0x'
功能。就不会那么复杂了replace
import sys
def solve_the_input(port):
port = hex(int(port))
result = port.replace("0x",'')
print 'input port is ',result
result = result.upper()
print 'input port is ',result
return result
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else :
port = solve_the_input(sys.argv[1])
C:\Users\dinesh_pundkar\Desktop>python c.py 1235
input port is 4d3
input port is 4D3
C:\Users\dinesh_pundkar\Desktop>
输出:
import sys
def solve_the_input(port):
port = hex(int(port))
result = port.replace("0x",'')
print 'input port is ',result
result = result.upper()
print 'input port is ',result
return result
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else :
port = solve_the_input(sys.argv[1])
C:\Users\dinesh_pundkar\Desktop>python c.py 1235
input port is 4d3
input port is 4D3
C:\Users\dinesh_pundkar\Desktop>
几点
return未分配回split\u port.upper()
split\u port
- 无需在
上拆分。您可以改用'0x'
功能。就不会那么复杂了replace
import sys
def solve_the_input(port):
port = hex(int(port))
result = port.replace("0x",'')
print 'input port is ',result
result = result.upper()
print 'input port is ',result
return result
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else :
port = solve_the_input(sys.argv[1])
C:\Users\dinesh_pundkar\Desktop>python c.py 1235
input port is 4d3
input port is 4D3
C:\Users\dinesh_pundkar\Desktop>
输出:
import sys
def solve_the_input(port):
port = hex(int(port))
result = port.replace("0x",'')
print 'input port is ',result
result = result.upper()
print 'input port is ',result
return result
if __name__ == "__main__":
if len(sys.argv) == 1:
print "please input a port"
else :
port = solve_the_input(sys.argv[1])
C:\Users\dinesh_pundkar\Desktop>python c.py 1235
input port is 4d3
input port is 4D3
C:\Users\dinesh_pundkar\Desktop>
返回新字符串的上限方法,但需要存储该字符串
split_port = split_result[1].upper()
返回新字符串的上限方法,但需要存储该字符串
split_port = split_result[1].upper()
python的基本规则:字符串方法不改变字符串-它们不能改变,因为字符串是不可变的(只读的)-所以它们总是返回一个新的字符串对象。python的基本规则:字符串方法不改变字符串-它们不能改变,因为字符串是不可变的(只读的)-所以它们总是返回一个新的字符串对象。