斗牛扑克发牌流程开发
- 定义好52张扑克牌(花色、大小)
- 生成扑克牌
- 洗牌(打乱顺序)
- 发牌(玩家个数、玩家5张手牌)
import random
ranks = ['2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A']
suits = ['♥', '♦', '♠', '♣']
def create_poker_list():
return list(f"{rank}{suit}" for suit in suits for rank in ranks)
def shuffle_poker(pocker_list):
random.shuffle(pocker_list)
return pocker_list
def deal_poker(pocker_list, player_num, player_hand_num):
hand_list = []
for i in range(player_num):
hand_list.append(pocker_list[0:player_hand_num])
pocker_list = pocker_list[player_hand_num:]
return hand_list
def douniu_game(player_num, player_hand_num):
pocker_list = create_poker_list()
new_poker_list = shuffle_poker(pocker_list)
return deal_poker(new_poker_list, player_num, player_hand_num)
for index, item in enumerate(douniu_game(2, 5)):
print(f"{index}:{item}")
0:['9♣', '4♠', 'J♥', '7♠', '8♠']
1:['3♠', '8♦', '8♣', '10♥', 'A♣']
.java
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class test {
private static final String[] ranks = {"2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"};
private static final String[] suits = {"♥", "♦", "♠", "♣"};
public static List<String> createPokerList() {
List<String> pokerList = new ArrayList<>();
for (String suit : suits) {
for (String rank : ranks) {
pokerList.add(rank + suit);
}
}
return pokerList;
}
public static List<String> shufflePoker(List<String> pokerList) {
Collections.shuffle(pokerList);
return pokerList;
}
public static List<List<String>> dealPoker(List<String> pokerList, int playerNum, int playerHandNum) {
List<List<String>> handList = new ArrayList<>();
for (int i = 0; i < playerNum; i++) {
List<String> hand = new ArrayList<>(pokerList.subList(0, playerHandNum));
handList.add(hand);
pokerList = pokerList.subList(playerHandNum, pokerList.size());
}
return handList;
}
public static List<List<String>> douniuGame(int playerNum, int playerHandNum) {
List<String> pokerList = createPokerList();
List<String> newPokerList = shufflePoker(pokerList);
return dealPoker(newPokerList, playerNum, playerHandNum);
}
public static void main(String[] args) {
List<List<String>> result = douniuGame(2, 5);
for (int index = 0; index < result.size(); index++) {
System.out.println(index + ":" + result.get(index));
}
}
}