day2 int,bool,str

本文深入探讨了不同编码方式的特点,如ASCII、Unicode、UTF-8等,并详细解析了Python中的基本数据类型,包括int、bool、str、list、tuple、dict及set,以及字符串的索引、切片和操作方法。

1,上周五内容回顾。
格式化输出
%s %d
%%
编码:
ascii 只能显示英文,特殊字符,数字。
万国码:unicode 最开始16位,中文不够32位 4个字节。
占用资源多。
升级:utf-8 utf-16 utf-32
utf-8:最少用一个字节,8位表示一个英文。
欧洲16位,两个字节。
亚洲 24位,三个字节。
gbk:中国国产,只能用于中文和ascii码中的文字。

 

2,作业讲解。
....

 

什么数据类型。
int 1,2,3用于计算。
bool:True,False,用户判断。
str:存储少量数据,进行操作
'fjdsal' '二哥','`13243','fdshklj'
'战三,李四,王二麻子。。。。'
list:储存大量的数据。
[1,2,3,'泰哥','12353234',[1,2,3]]
元祖:只读。
(1,2,3,'第三方',)
dict:字典{'name':'云姐','age':16}
字典{'云姐':[],'二哥':[200,200,200,。。。。。。]}
集合:{1,2,34,'asdf'}
3,int。

4,bool。
5,str。

#字符串的索引与切片

s = 'ABCDLSESRF'
#索引
# s1 = s[0]
# print(s1)
# s2 = s[2]
# print(s2)
# s3 = s[-1]
# print(s3)
# s4 = s[-2]
# print(s4)
# #ABCD   切片 :顾头不顾尾
# s5 = s[0:4]
# print(s5)
# s6 = s[0:-1]
# print(s6)
# s7 = s[:]
# s8 = s[0:]
# print(s7,s8)
# s9 = s[0:0]
# print(s9)
s = 'ABCDLSESRF'  # s[首:尾:步长]
# s10 = s[0:5:2]
# print(s10)
# s11 = s[-1:-5:-1]
# s111=s[4:0:-1]
# s1111=s[0:4:-1]
# print(s11,s111,s1111)
# s12 = s[3::-1]
# print(s12)
# s13 = s[3::-2]
# print(s13)
# s = 'ABCDLSESRF'
# s14 = s[-1::-1]
# print(s14)
# s15 = s[::-1]
# print(s15)


#字符串的操作
# s = 'alexWUsir'
# s1 = s.capitalize()  # 首字母大写
# print(s1)

# 全大写,全小写
s2 = s.upper()
s21 = s.lower()
# print(s2,s21)
'''
s_str= 'acEQ1'
you_input =input('请输入验证码,不区分大小写')
if s_str.upper() == you_input.upper():
    print('输入成功')
else:
    print('请重新输入')
'''
#大小写翻转
# s3 = s.swapcase()
# print(s3)
# 每个隔开(特殊字符或者数字)的单词首字母大写
# s = 'alex*egon-wusir'
# s4 = s.title()
# print(s4)
# s = 'fade,crazy*w4rri0r_songsong node_3'
# s4 = s.title()
# print(s4)

# 居中,空白填充
# s = 'alexWUsir'
# s5 = s.center(20,'~')
# print(s5)

# s = 'alex\tsir'
# s6 = s.expandtabs()
# print(s6)

# s = 'alex二哥'
# #公共方法
# l = len(s)
# print(l)

#以什么开头结尾 endswith
# s = 'alexWUsir'
# s7 =s.startswith('alex')
# s71 = s.startswith('e',2,5)
# print(s71)
'''
if s7:
    pass
elif s.startswith('bl'):
    pass
print(s7)
'''
# find 通过元素找索引,找不到返回-1
#
# index通过元素找索引,找不到报错
# s = 'alexWUsir'
# s8 = s.find('A')
# s81 = s.index('A')
# print(s81,type(s8))

#strip rstrip lstrip
# s = 'alexWUsir%'
# s9 = s.strip('%')
# print(s9)
# s = ' *a%lexWUsi* r%'
# s91 = s.strip(' %*')
# print(s91)

# strip 默认删除前后空格

# username = input('请输入名字:').strip()
# if username =='春哥':
#     print('恭喜春哥发财')

# s = 'alexaa wusirl'
# s10 = s.count('al')
# print(s10)

# split   str ---->list
# s = ';alex;wusir;taibai'
# l = s.split('a')
# print(l)

#format的三种玩法 格式化输出
# s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白',36,'girl','太白')
# print(s)
# name = input('请输入名字:')
# s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,36,'girl')
# print(s)
# name = input('请输入名字:')
# s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='girl')
# print(s)

# s = '来看待街坊邻居复合大师街坊法好的撒见客户'
# s11 = s.replace('街坊','老王',1)
# print(s11)

# s = 'fhdsklfds'
# for i in s:
#     print(i)
s = 'fdsa苍井空fdsalk'
if '苍井空' in s:
    print('您的评论有敏感词...')


# str ='*al*ex WUsir nanji*ng*'
# a=str.rstrip('*')
# print(a)

# s = 'asdfer'
# i = 0
# while i <len(s):
#     print(s[i])
#     i+=1

#设计一个加法计算器:
sum = 0
content = input ('请输入内容:').strip()   #去除用户误输入的空格
a=content.split('+')      #对用户的输入用‘+’进行字符串的分割
for i in a:           #对a中的元素进行遍历
    x=int(i)          #把a中的数据转换为数字类型
    sum = sum +x      #求和
print(sum)            #输出和

 

转载于:https://www.cnblogs.com/xingqisan/p/10712394.html

#include <stdio.h> #include <stdbool.h> // 函数声明 bool isLeapYear(int year); bool isValidDate(int year, int month, int day); bool isPalindromeDate(int year, int month, int day); int countPalindromeDates(int startDate, int endDate); int main() { int startDate, endDate; scanf("%d", &startDate); scanf("%d", &endDate); int count = countPalindromeDates(startDate, endDate); printf("%d\n", count); return 0; } // 判断是否为闰年 bool isLeapYear(int year) { return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0); } // 判断日期是否有效 bool isValidDate(int year, int month, int day) { if (month < 1 || month > 12) return false; int maxDay; switch (month) { case 4: case 6: case 9: case 11: maxDay = 30; break; case 2: maxDay = isLeapYear(year) ? 29 : 28; break; default: maxDay = 31; break; } return day >= 1 && day <= maxDay; } // 判断日期是否为回文 bool isPalindromeDate(int year, int month, int day) { int date = year * 10000 + month * 100 + day; char str[9]; sprintf(str, "%08d", date); for (int i = 0; i < 4; i++) { if (str[i] != str[7 - i]) { return false; } } return true; } // 计算两个日期之间的回文日期数量 int countPalindromeDates(int startDate, int endDate) { int startYear = startDate / 10000; int startMonth = (startDate / 100) % 100; int startDay = startDate % 100; int endYear = endDate / 10000; int endMonth = (endDate / 100) % 100; int endDay = endDate % 100; int count = 0; for (int year = startYear; year <= endYear; year++) { for (int month = 1; month <= 12; month++) { int maxDay; switch (month) { case 4: case 6: case 9: case 11: maxDay = 30; break; case 2: maxDay = isLeapYear(year) ? 29 : 28; break; default: maxDay = 31; break; } for (int day = 1; day <= maxDay; day++) { // 检查是否在起始日期之后或等于起始日期 if (year == startYear && month == startMonth && day < startDay) continue; // 检查是否在结束日期之前或等于结束日期 if (year == endYear && month == endMonth && day > endDay) continue; if (isPalindromeDate(year, month, day)) { count++; } } } } return count; }直接修改上述并给出代码
04-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值