我有一个函数将十进制转换为十六进制,但它以相反的顺序打印它.我该如何解决?
def ChangeHex(n):
if (n < 0):
print(0)
elif (n<=1):
print(n)
else:
x =(n%16)
if (x < 10):
print(x),
if (x == 10):
print("A"),
if (x == 11):
print("B"),
if (x == 12):
print("C"),
if (x == 13):
print("D"),
if (x == 14):
print("E"),
if (x == 15):
print ("F"),
ChangeHex( n / 16 )
Run Code Online (Sandbox Code Playgroud) 我有一个关于indexOf方法的问题.我想在字符串中找到多个"X"的情况.
假设我的字符串是"x是x是x是x",我想在其所有索引位置找到x.但是你如何针对多种情况做这件事呢?indexOf甚至可以实现这一点吗?
我做了int temp = str.indexOf('x'); 它找到了第一个x.我尝试做一个for循环,其中我被初始化为字符串的长度,这不起作用,因为我一直在寻找第一个x.
for (int y = temp1; y >= 0;y-- )
{
int temp = str.indexOf('x');
System.out.println(temp);
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用.我应该使用正则表达式吗?因为我真的不知道如何使用正则表达式方法.
任何帮助将不胜感激,谢谢!
我想使用递归来反转python中的字符串,以便向后显示字符(即"Hello"将变为"olleh"/"olle h".
我写了一个迭代地做的:
def Reverse( s ):
result = ""
n = 0
start = 0
while ( s[n:] != "" ):
while ( s[n:] != "" and s[n] != ' ' ):
n = n + 1
result = s[ start: n ] + " " + result
start = n
return result
Run Code Online (Sandbox Code Playgroud)
但是我究竟如何递归地做到这一点呢?我对此部分感到困惑,特别是因为我不使用python和递归.
任何帮助,将不胜感激.
我有一个接收temp的函数,这是一对.
type temp = (pd * string);;
Run Code Online (Sandbox Code Playgroud)
我想在temp中提取该字符串.但我不能编写一个可以匹配temp的函数,因为它是一个类型.
我写了一个函数:
let print_temp(t:temp) (out: out_channel) : unit =
fun z -> match z with
(_,a) -> output_string out a "
;;
Run Code Online (Sandbox Code Playgroud)
但这给了我一个错误,说它不是一个功能.我基本上想要提取该字符串并将其打印出来.对此的任何意见将不胜感激.
我正在运行一个Web爬虫供我自己使用.我下载了一个并希望提供种子.我想提供大约50粒种子.所以我创建了一个字符串数组.我希望每次遍历for循环时为爬虫提供1个种子.我的代码是:
String [] temp = new String [] {"http://www.random.org/","http://www.wikipedia.org/","http://www.jlworld.com/"," http://www.frys.com/"};
String [] urls = new String [temp.length];
Run Code Online (Sandbox Code Playgroud)for (int i = 0; i <=temp.length; i++) { urls[i] = temp[i]; }
抓取工具需要分配给网址的字符串.所以喜欢:
String [] urls = new String [1];
urls [0] ="http://www.google.com/";
所以它就是这样的.对于我的代码,我得到了一个outofbounds异常.我想要做的是每次通过for循环时为爬虫提供1个种子.任何有关这方面的帮助将不胜感激!
我试图在ocaml中找到列表的长度.
我先调用一个函数调用
Run Code Online (Sandbox Code Playgroud)> let get_list_length e in > print_list_length out x
get_list_length中的实际代码是我感到困惑的地方."e"是一个"命令"列表,我想找到所有"命令"的长度.
let get_list_length(e:values):unit =
match e with
let x = list.length(e);;
所以我的e是"命令"列表,它是我的语法文件中指定的一堆值.我很困惑如何得到列表的长度,因为e是一个值列表,我想要该列表的长度.
任何帮助,将不胜感激.
所以我有一个递归函数,它有2个整数,一个out_channel,基本上打印行(a,a + 1).它应该这样做,直到a的值等于b.即如果a = 1,则b = 5
第(1,2)行(2,3)......第(4,5)行
> let rec print_line (out:out_channel)(a:int)(b:int) : unit =
if (a < b) then output_string out ("line("^string_of_int(a)^","^string_of_int(a+1)^")\n")
> ;;
Run Code Online (Sandbox Code Playgroud)
我想让它继续打印行(a,a + 1),直到a不再小于b.我该怎么称呼它呢?
任何帮助,将不胜感激.