Python的字符问题
可能是很有用的东西。
前言
Python中的''
表达的是字符串而并非是当个字符,涉及到一些麻烦的'a' + 2
这种转换ASCII码的时候,如果使用c++的话会很方便(然而有的题目int128
都炸),python的话需要借助两个函数实现。
Python中实现直接转换的方法
chr方法
Python中有个方法,叫chr()
,作用就是把数字转换为单个字符。
ord方法
这个方法的作用就是把单个字符转换为数字。
具体题目
这道题正解不是这么做的虽然这么做很河里,题解中的做法很妙(还有秦九昭)。不过这里就用暴力了。
规定'0'~'9'代表0~9,'A'~'Z'代表10~35,'a'~'z'代表36~61。
输入格式: 输入x,y,s(2≤x,y≤62,∣s∣≤22),s是x进制下的数字,需要转换成y进制。
输出格式: 输出y进制下的数字
因为进制转换谁都会(我不会,我WA了),所以这里直接给出可行的Python代码(当然不是最好的正解)。
def num_to_char(n : int) -> str:
if 0 <= n <= 9:
return str(n)