python第三天課程:int, bool, str

什麽數據類型:

  int :1.2.3 用於計算

# .bit_length()計算二進制的位數
"""
i = 100
print(i.bit_length())
"""

  bool :True,False 用戶判斷

  str: 儲存少量數據,進行操作

  'fdjsal' , '二哥' , '`13243' , 'fdshklj' , '戰三, 李四, 王二麻子。。。。'

  list:儲存大量的數據。

    [1,2,3 , '泰哥' ,  '12353234' , [1,2,3]]

  元祖:只讀。

    (1,2,3, '第三方',)

  dict:字典{'name' : ’雲姐‘ , 'age' : 16}

    字典{'云姐' : [] , '二哥'  : [200,200,200,200,。。。。。。]}

  集合: {1,2,34, 'aasdf'}

轉換:

  

#bool True False

#int ----> str
i = 1
s = str(1)

#str ----> int
s = '123'
i = int(s)

#int ----> bool 只要是0 ----> False  非0就是True
i = 3
b = bool(i)
print(b)

#bool ----> int
#True   1
#False  0

'''
ps:
while True:
    pass
while 1:效率高
    pass
'''

#str ----> bool

#s=""----> False
#非空字符串都是True
#s = "0"----> True

#s
if s:
    print('您輸入的爲空,請重新輸入')
else:
    pass

 

字符串的索引與切片:

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

字符串的操作:

'''
s = 'alexWUsir'
s1 = s.capitalize() #首字母大寫
print(s1)

#全大寫全小寫
s2 = s.upper()
s3 = s.lower()
print(s2,s3)

s_str = 'acEQ1'
you_input = input('請輸入驗證碼,不區分大小寫')
if you_input.lower() == s_str.lower():
    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')
print(s7)
s71 = s.startswith('e',2,5)
print(s71)

if s7:
    pass
elif s.startswith('bl'):
    pass

# find 通過元素找索引,找不到返回-1
#index 通過元素找索引,找不到報錯
s = 'alexWUsir'
s8 = s.find('A')
s9 = s.index('A')
print(s8,s9)

#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('太白', 18, 'girl', '太白')
print()
name = input('請輸入名字:')
s = '我叫{0}, 今年{1}, 愛好{2}, 再説一下我叫{0}'.format(name,36, 'girl')
print(s)
name = input('請輸入名字:')
s = '我叫{name}, 今年{age}, 愛好{hobbie}, 再説一下我叫{name}'.format(name = name,age = 36, hobbie ='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('您的评论有敏感词...')

name = 'jinxin123'
print(name.isalnum()) #字符串由字母和數字組成
print(name.isalpha()) #字符串由字母組成
print(name.isdigit()) #字符串由數字組成
'''

 HW:

 

'''
#1.有變量 name = "aleX leNb"完成如下操作
#1).移除 name 變量對應的值兩邊的空格,並輸出處理結果
name = "aleX leb"
q1 = name.strip("")
print(q1)

#2).移除 name 變量左邊的‘al'并輸出處理結果
name = "aleX leNb"
q2 = name.lstrip('al')
print(q2)

#3).移除 name 變量右邊的‘Nb'并輸出處理結果
name = "aleX leNb"
q3 = name.rstrip('Nb')
print(q3)

#4).移除name 變量開頭的‘a'與最後的'b',并輸出處理結果
name = "aleX leNb"
q4 = name.lstrip('a').rstrip('b')
print(q4)

#5).判斷name 變量是否以"ai"開頭并輸出結果
name = "aleX leNb"
q5 = name.startswith('al')
print(q5)

#6).判斷name 變量是否以'Nb'結尾並輸出結果
name = "aleX leNb"
q6 = name.endswith('Nb')
print(q6)

#7)將name 變量對應的值中的所有'l'替換成'p'並輸出結果
name = "aleX leNb"
q7 = name.replace('l', 'p')
print(q7)

#8).將name 變量對應的值中的第一個'l'替換成'p'並輸出結果
name = "aleX leNb"
q8 = name.replace('l', 'p',1)
print(q8)

#9).將name 變量對應的值 根據所有的'l'分割,並輸出結果
name = "aleX leNb"
s9 = name.split('l')
print(s9)

#10).將name 變量對應的值 根據第一個'l'分割,並輸出結果
name = "aleX leNb"
s10 = name.split('l', 1)
print(s10)

#11).將name 變量對應的值變大寫,並輸出結果
name = "aleX leNb"
s11 = name.upper()
print(s11)

#12).將name 變量對應的值變小寫,並輸出結果
name = "aleX leNb"
s12 = name.lower()
print(s12)

#13).將name 變量對應的值首字母'a'大寫,並輸出結果
name = "aleX leNb"
s13 = name.capitalize()
print(s13)

#14).判斷name 變量對應的字母'l'出現幾次,並輸出結果
name = "aleX leNb"
s14 = name.count('l')
print(s14)

#15).如果判斷name 變量對應的值前四位’l'出現幾次,並輸出結果
name = "aleX leNb"
q15 = name.count('l', 0, 5)
print(q15)

#16).從name變量對應的值中找到'N'對應的索引(如果找不到則報錯),並輸出結果
name = "aleX leNb"
q16 = name.index('N')
print(q16)

#17).從name變量對應的值中找到'N'對應的索引(如果找不到則返回-1),並輸出結果
name = "aleX leNb"
q17 = name.find('N')
print(q17)

#18).從name變量對應的值中找到'X le'對應的索引,並輸出結果
name = "aleX leNb"
q18 = name.find('X le')
print(q18)

#19)請輸出name變量對應的值的第二個字符
name = "aleX leNb"
q19 = name[1]
print(q19)

#20)請輸出name變量對應的值的前三個字符
name = "aleX leNb"
q20 = name[0:3]
print(q20)

#21)請輸出name變量對應的值的後兩個符
name = "aleX leNb"
q21 = name[-2:]
print(q21)

#22)請輸出name變量對應的值中'e'所在的對應位置
name = "aleX leNb"
q22 = name.find('e')
print(q22)
q23 = name.find('e', -5, -1)
print(q23)

#獲取子序列,去掉最後一個字符。
name = "aleX leNb"
j = name[0:-1]
for i in j:
    print(i)

#2.有字符串s='132a4b5c'
#1).通過對li列表的切片形成新的字符串s1, s1 = '132'
s='132a4b5c'
s1 = s[0:3]
print(s1)

#2).通過對li列表的切片形成新的字符串s2, s2 = 'a4b'
s='132a4b5c'
s2 = s[3:6]
print(s2)

#3).通過對li列表的切片形成新的字符串s3, s3 = '1245'
s='132a4b5c'
s3 = s[0:-1:2]
print(s3)

#4).通過對li列表的切片形成新的字符串s4, s4 = '3ab'
s='132a4b5c'
s4 = s[1:6:2]
print(s4)

#5).通過對li列表的切片形成新的字符串s5, s5 = 'c'
s = '132a4b5c'
s5 = s[-1]
print(s5)

#6).通過對li列表的切片形成新的字符串s6, s6 = 'ba3'
s = '132a4b5c'
s6 = s[-3::-2]
print(s6)

#3.使用while和for循環分別打印字符串s='asdfer'中每個元素
s='asdfer'
for i in s:
    print(i)

s='asdfer'
index = 0
while 1:
    print(s[index])
    index += 1
    if index == 6:
        break

#4.實現一個整數加法計算器:
#如:content=input('請輸入内容:') #如用戶輸入:5+9 或 5+9 或 5+9,然後進行分割再計算
content = input('請輸入内容: ').strip()
index = content.find('+')
a = int(content[0:index])
b = int(content[index+1:])
print(a+b)

5.計算用戶輸入的内容有幾個整數
如:content=input('請輸入内容:')
content=input('請輸入内容:')
count = 0
for i in content:
    if i.isdigit():
        count += 1
print(count)
'''

 

 

 

 

 

转载于:https://www.cnblogs.com/yvz5414/p/10177239.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值