天天看點

一起學Python吧~Day01

#!/bin/env python3
#-*- coding:utf8 -*-
#學python3的第一天
# print('Hello boy!\nWellcom csdnak world!!') #字元串必須用引号引起來,單雙引号無差別
# if 3 > 0:
#     print('yes')
#     print("ok")
# print('Are you ok?',1906) #列印多項,用逗号分隔,輸出時各項間預設是空格
# print("I am fine,thinks.",1907,sep='***') #設定輸出的各項間以***為分隔符
# print("ok" + '123') #字元串隻能和字元串拼接用'+'号
# print('And you' + '?') #字元串不能和數字拼接
# #input()輸入語句
# user = input('使用者名: ')
# print('歡迎',user)
# print('歡迎 ' + user)
# print('歡迎 %s' % user)
#字元串不能做數字運算:
# user = input('username: ') #input讀入的一定是字元串
# if user == "csdnak":
#     print("%s 3.8.0 (default, Oct 31 2019, 09:48:38)"%user) #%s是占位符,後面的user内容将會替代它
#     print('Wellcom csdnak world!!')
#     op = input('Please options: ')
#     if op == 'bc':
#         number1 = input('Please number1: ')
#         number2 = input("Please number2: ")
#         num = int(number1) + int(number2)
#         print("= ",num)
#     elif op == 'help':
#         print('Please input bc')
#     else:
#         print('You can view "help" option')
# else:
#     print("User name error,please re-enter!")
# #變量指派自右向左進行,将=右邊表達式的計算結果指派給左邊的變量
# a = input('Please a number: ')
# print(a)
# b = int(a) + 5
# print(b)
# b += 5
# print(b)
# b -= 10
# print(b)
# b *= 2
# print(b)
##python之禅
#import this
"""
翻譯:
 美勝于醜。
 顯式比隐式好。
 簡單勝于複雜。
 複雜勝于複雜。
 平的比嵌套的好。
 稀勝于密。
 可讀性很重要。
 特殊情況不足以打破規則。
 盡管實用勝過純粹。
 錯誤不應該悄無聲息地過去。
 除非明确沉默。
 面對模棱兩可,拒絕猜測的誘惑。
 應該有一個——最好隻有一個——顯而易見的方法。
 不過,除非你是荷蘭人,否則這種方式一開始可能并不明顯。
 現在總比沒有好。
 盡管從來沒有比現在更好。
 如果實作很難解釋,那是個壞主意。
 如果實作很容易解釋,這可能是一個好主意。
 名稱空間是一個非常棒的主意——讓我們做更多的事情吧!
"""
# #運算符
# numa = input('Please number: ')
# numb = int(numa)
# num1 = numb / 2
# print(num1)
# num2 = numb // 2 #隻保留商
# print(num2)
# num3 = numb % 3 #求餘/模運算
# print(num3)
# divmod(numb,2) #numb除以2,傳回商和餘數
# a , b = divmod(numb,2) #将商和餘數分别指派給a和b
# 2 ** 3 #2的三次方,幂運算
# #比較運算符
# a = 3 #=是指派,不是比較
# print(a)
# print(3 == 3) #==比較必須用==表示判斷是否相等
# print(10 > 5 > 1) #python支援連續比較
# print(10 > 5 < 30) #相當于20 > 5 and 5 < 30(不推薦,因為可讀性差)
# #邏輯運算符,最終結果為True或False(從左到右匹即停止)
# print(10 > 50 and 2 < 5)
# print(10 > 5 and 2 < 5) # and 兩邊全為True,最終才是True
# print(10 > 50 or 2 < 5) #or兩邊隻要一邊為True就是True
# print(2 * 3 ** 2)
# print(2 * (3 ** 2))
# print(not 10 > 50 or 2 < 5) #涉及到可讀性差的代碼應該加(),讓他人和程式可讀性增加
# print((not 10 > 50) or 2 < 5)
# print(10 > 3)
# print(not 10 > 3) # not是取反,真變假,假變真
#type判斷資料類型
# print(type(1.3))
# print(type('sda'))
# #True和False值福别是1和0
# print(True + 1)
# print(False * 5)
# #python預設使用10進制數表示數字
# #如果以0o/0O開頭,表示8進制
# print(0o11)
# print(oct(9)) #将10進制數轉為8進制數
# #16進制數以0x開頭
# print(0x11)
# print(hex(17)) #10進制轉換16進制
# #2進制數以0b開頭
# print(0b11)
# print(bin(3)) #将10進制轉換為二進制
# #字元串:讓每個單詞占一行
# test = "hello\nwelcome\ngreet" #\n換行符号
# print(test)
# test2 = """hello
# welcome
# greet""" #"""保留原有格式
# print(test2)
# test3 = """1    2   3"""
# print(test3)
#截取字元串
#從左向右從0開始,從右向左-1開始
# py_str = 'python'
# print(len(py_str)) #計算字元長度
# print(py_str[0])   #截取從左向右第一個字元
# print(py_str[-1])  #截取從右向左第一個字元
# print(py_str[2:4]) #截取切片,起始下标包含,結束下标不包含
# print(py_str[2:])  #從下标為2取到結束
# print(py_str[2:60]) #從下标為2取到60,即使真實長度不到60也可以(不會報錯)
# print(py_str[:]) #從頭取到未
# print(py_str)   #輸出變量值
# print(py_str[::2]) #切片預設步長值為1,改為2
# print(py_str[1::2]) #從下标1開始取步數為2的字元
# print(py_str[::-1]) #反向輸出
# print(py_str + 'good') #拼接
# print('*' * 30) # *号重複30遍
# print(py_str*5) #pyhton重複5遍
# #判斷成員是否在字元串中
# print('t' in py_str) # t在字元串裡麼?(如果在傳回True否則False)
# print('th' in py_str) # th在字元串裡麼?
# print('to'in py_str) # to在字元串裡麼?
# print('to'not in py_str) # to結果取反
# #清單,與字元串類似,都是序列對象
# alist = [1, 2, 3, 'tom', 'jerry']
# print(len(alist))
# print(alist[0])
# print(alist[3:])
# print(3 in alist)
# print('o' in alist)
# print(alist + [10,20])
# print(alist * 2)
# print(alist.append('bob')) #向清單尾部追加一個字元串
# print(alist)
# #元組:可以認為他是不可變的清單
# atup = (1,2,3,'bob','tom')
# print(len(atup))
# print(atup[0])
# print(atup[3:])
# alist[0] = 10 #清單可變,可以把元素重新指派
# print(alist)
# atup[0] = 10 #元組不可變,是以不能把它的元素重新指派(會報錯)
# #字典: 采用的是key:value的形式
# adict = {'name': 'tom','age': 20}
# print(len(adict))
# print(adict[0]) #字典是無序的,是以沒有下标(會報錯)
# print('tom' in adict) #tom是字典的key嚒?
# print(adict['name']) #通過key來找到value
# # 資料類型的特點
# alist = [1,2,3,'zsx','gzl']
# blist = alist
# print(blist)
# blist.append('ak')
# print(blist)
# print(alist) #如此指派表現alist,blist指向同一個表
# blist = alist[:]
# print(blist)
# blist.append('ak')
# print(blist,"\n",alist) #通過從新建立個容易來裝alist表值解決指向同一個表的問題
           

繼續閱讀