Python的小括弧,中括号,大括号还有尖括号的区别

在使用python做项目的过程中发现这种语言使用了很多种类型的括号来表达数据类型,常见的有四种,分别是:小括号( )、中括号[ ]和大括号,也叫做花括号{ },还有尖括号<>,其作用也各不相同,分别用来代表不同的python基本内置数据类型。

1、python中的小括号( ):代表tuple元组数据类型,元组是一种不可变序列。创建方法很简单,大多时候都是用小括号括起来的。

>>> tup = (1,2,3,4)    
>>> tup    
(1, 2, 3, 4)    
>>>    
>>> ()#空元组    
()    
>>>     
>>> 66,#一个值的元组    
(66,)

2、python中的中括号[ ]:代表list列表数据类型,列表是一种可变的序列。其创建方法即简单又特别,像下面一样:

>>> list('usepython')    
['u', 's', 'e','p', 'y', 't', 'h', 'o', 'n']

3、python大括号{ }花括号:代表dict字典数据类型,字典是由键对值组组成。冒号':'分开键和值,逗号','隔开组。用大括号创建的方法如下:

>>> dic={'john':'boy','lily':'girl'}    
>>> dic    
{'lily': 'girl', 'john': 'boy'}    

4.python的中括号<>表示的是一个set集合,只需要用for循环来访问就可以了,结果就是具体的内容了,如下:

b=[<redminelib.Issue #13333 "打开充值面板失败">, <redminelib.Issue #13334 "分享至QQ失败">]
for a in b
print(a)

 

转载于:https://my.oschina.net/u/658291/blog/2208237

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用栈来实现括号匹配,以下是使用自定义栈SqStack判断一个中小括号组成的字符串中的括弧是否匹配的C语言代码: ```c #include <stdio.h> #include <stdlib.h> #define MAXSIZE 100 // 栈的最大容量 // 定义栈结构 typedef struct { char data[MAXSIZE]; // 存储栈中元素 int top; // 栈顶指针 } SqStack; // 初始化栈 void InitStack(SqStack *S) { S->top = -1; } // 判断栈是否为空 int StackEmpty(SqStack *S) { return (S->top == -1); } // 判断栈是否已满 int StackFull(SqStack *S) { return (S->top == MAXSIZE - 1); } // 入栈 int Push(SqStack *S, char x) { if (StackFull(S)) { return 0; // 栈已满,无法入栈 } S->top++; S->data[S->top] = x; return 1; } // 出栈 int Pop(SqStack *S, char *x) { if (StackEmpty(S)) { return 0; // 栈已空,无法出栈 } *x = S->data[S->top]; S->top--; return 1; } // 获取栈顶元素 int GetTop(SqStack *S, char *x) { if (StackEmpty(S)) { return 0; // 栈已空,无法获取栈顶元素 } *x = S->data[S->top]; return 1; } // 判断两个字符是否匹配 int IsMatch(char left, char right) { if (left == '(' && right == ')') { return 1; } if (left == '[' && right == ']') { return 1; } return 0; } // 判断括号是否匹配 int IsBracketMatch(char *str) { SqStack S; InitStack(&S); char c; while (*str) { if (*str == '(' || *str == '[') { // 左括号入栈 Push(&S, *str); } else if (*str == ')' || *str == ']') { // 右括号与栈顶元素匹配 if (StackEmpty(&S)) { // 栈已空,无法匹配 return 0; } GetTop(&S, &c); // 获取栈顶元素 if (IsMatch(c, *str)) { // 匹配成功,出栈 Pop(&S, &c); } else { // 匹配失败 return 0; } } str++; } if (StackEmpty(&S)) { // 栈为空,括号匹配成功 return 1; } else { // 栈不为空,括号匹配失败 return 0; } } int main() { char str[MAXSIZE]; printf("请输入一个中小括号组成的字符串:"); scanf("%s", str); if (IsBracketMatch(str)) { printf("括号匹配成功!\n"); } else { printf("括号匹配失败!\n"); } return 0; } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值