小编Akr*_*ios的帖子

列出目录中的所有文件?

任何人都可以帮我创建一个函数,它将使用pathlib库创建某个目录下的所有文件的列表吗?

在这里,我有一个:

在此输入图像描述

我有

  • c:\desktop\test\A\A.txt

  • c:\desktop\test\B\B_1\B.txt

  • c:\desktop\test\123.txt

我希望有一个列表可以有上面的路径,但我的代码返回一个嵌套列表.

这是我的代码:

from pathlib import Path

def searching_all_files(directory: Path):   
    file_list = [] # A list for storing files existing in directories

    for x in directory.iterdir():
        if x.is_file():

           file_list.append(x)
        else:

           file_list.append(searching_all_files(directory/x))

    return file_list


p = Path('C:\\Users\\akrio\\Desktop\\Test')

print(searching_all_files(p))
Run Code Online (Sandbox Code Playgroud)

希望有人能纠正我.

python pathlib

16
推荐指数
9
解决办法
2万
查看次数

char类型按位操作失败到int

我尝试在C中按位操作.这是我的代码:

int main() {
    char c = 127;
    c <<= 1;
    if (c == 0xfe) {
        printf("yes");
    }
    else {
        printf("No");
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

系统控制台打印否.我希望收到的是是.位移后c中的值为ffffffffe.似乎系统已经将8位改为32位.谁能帮我.

c bit-manipulation type-conversion integer-promotion type-promotion

4
推荐指数
1
解决办法
63
查看次数

函数在数组中生成随机数

我正在尝试创建一个为数组创建随机数的函数.这是我的代码.

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#define ROW 22
#define COL 80


void display(int life[ROW][COL]){
    for(int i = 0; i<ROW; i++){
        for(int j=0; j<COL; j++){
            printf("%d",life[i][j]);
        }
        printf("\n");
    }
}
void initialize_board(int life[ROW][COL]){
    for(int i = 0; i< ROW;i++){
        for(int j = 0; j<COL ; j++){
            life[ROW][COL] = rand()%2;
        }
    }
}
int main() {
    srand(getpid());
    printf("PID: %d\n",getpid());
    int life[22][80] = {0};
    initialize_board(life);
    display(life);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是我得到的输出是0而不是随机分配给0或1.

c arrays random numbers

0
推荐指数
1
解决办法
51
查看次数