คำถามติดแท็ก python-3.x

สำหรับคำถามเกี่ยวกับการเขียนโปรแกรม Python ที่เฉพาะเจาะจงกับภาษารุ่น 3 ขึ้นไป ใช้แท็ก [หลาม] ทั่วไปมากขึ้นหากคำถามของคุณไม่เฉพาะรุ่น ใช้แท็ก [python-2.x] สำหรับคำถาม Python 2

4
จะใช้ newline '\ n' ใน f-string เพื่อจัดรูปแบบเอาต์พุตใน Python 3.6 ได้อย่างไร
ฉันต้องการทราบวิธีจัดรูปแบบเคสนี้ด้วยวิธี Pythonic ด้วย f-strings: names = ['Adam', 'Bob', 'Cyril'] text = f"Winners are:\n{'\n'.join(names)}" print(text) ปัญหาคือ'\'ไม่สามารถใช้ภายใน{...}ส่วนนิพจน์ของ f-string ผลลัพธ์ที่คาดหวัง: Winners are: Adam Bob Cyril

6
การเข้าถึงองค์ประกอบ dict_keys โดยดัชนีใน Python3
ฉันกำลังพยายามเข้าถึงองค์ประกอบของ dict_key โดยดัชนี: test = {'foo': 'bar', 'hello': 'world'} keys = test.keys() # dict_keys object keys.index(0) AttributeError: 'dict_keys' object has no attribute 'index' fooฉันต้องการที่จะได้รับ เหมือนกับ: keys[0] TypeError: 'dict_keys' object does not support indexing ฉันจะทำเช่นนี้ได้อย่างไร?

5
แนวทางปฏิบัติที่ดีในการตรวจสอบว่ามีตัวแปรด้านสิ่งแวดล้อมอยู่หรือไม่?
ฉันต้องการตรวจสอบสภาพแวดล้อมของฉันว่ามีตัวแปรหรือไม่พูด"FOO"ใน Python เพื่อจุดประสงค์นี้ฉันใช้ไฟล์osไลบรารีมาตรฐาน หลังจากอ่านเอกสารของห้องสมุดฉันได้ค้นพบ 2 วิธีในการบรรลุเป้าหมาย: วิธีที่ 1: if "FOO" in os.environ: pass วิธีที่ 2: if os.getenv("FOO") is not None: pass ฉันต้องการทราบว่าวิธีใดเป็นเงื่อนไขที่ดี / เป็นที่ต้องการและเพราะเหตุใด

5
พิมพ์คำใบ้รายการประเภทที่ระบุ
การใช้คำอธิบายประกอบฟังก์ชันของ Python 3 เป็นไปได้ที่จะระบุประเภทของรายการที่อยู่ในรายการที่เป็นเนื้อเดียวกัน (หรือคอลเล็กชันอื่น ๆ ) เพื่อวัตถุประสงค์ในการระบุประเภทใน PyCharm และ IDE อื่น ๆ ? ตัวอย่างรหัส pseudo-python สำหรับรายการ int: def my_func(l:list<int>): pass ฉันรู้ว่ามันเป็นไปได้โดยใช้ Docstring ... def my_func(l): """ :type l: list[int] """ pass ... แต่ฉันชอบรูปแบบคำอธิบายประกอบมากกว่าถ้าเป็นไปได้

2
การปลดวัตถุ python 2 ด้วย python 3
ฉันสงสัยว่ามีวิธีโหลดวัตถุที่ถูกดองใน Python 2.4 ด้วย Python 3.4 หรือไม่ ฉันใช้ 2to3 กับรหัสเดิมของ บริษัท เป็นจำนวนมากเพื่ออัปเดตให้เป็นปัจจุบัน เมื่อทำสิ่งนี้เสร็จแล้วเมื่อเรียกใช้ไฟล์ฉันได้รับข้อผิดพลาดต่อไปนี้: File "H:\fixers - 3.4\addressfixer - 3.4\trunk\lib\address\address_generic.py" , line 382, in read_ref_files d = pickle.load(open(mshelffile, 'rb')) UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 1: ordinal not in range(128) เมื่อมองไปที่วัตถุดองในการโต้แย้งมันเป็นdictใน a dictที่มีคีย์และค่าประเภทstrที่มีคีย์และค่าประเภท คำถามของฉันคือ: มีวิธีโหลดวัตถุเดิมที่ดองใน python 2.4 ด้วย …

5
ไฟล์สภาพแวดล้อมการส่งออก Anaconda
ฉันจะสร้างไฟล์สภาพแวดล้อม anaconda ที่สามารถใช้กับคอมพิวเตอร์เครื่องอื่นได้อย่างไร ฉันส่งออกสภาพแวดล้อมงูหลามอนาคอนดาไปยัง YML โดยใช้conda env export > environment.ymlไฟล์. สิ่งที่ส่งออกenvironment.ymlมีบรรทัดนี้prefix: /home/superdev/miniconda3/envs/juicyenvซึ่งแมปไปยังตำแหน่งของงูใหญ่ของฉันซึ่งจะแตกต่างจากพีซีอื่น ๆ

14
จะติดตั้ง pip สำหรับ Python 3 บน Mac OS X ได้อย่างไร
OS X (Mavericks) มีการติดตั้งสต็อค Python 2.7 แต่ฉันทำสิ่งหลามส่วนตัวกับ 3.3 ฉันเพิ่งล้างการติดตั้ง 3.3.2 และติดตั้ง 3.3.3 ใหม่ ดังนั้นฉันต้องติดตั้งpyserialอีกครั้ง ฉันสามารถทำสิ่งที่ฉันเคยทำมาก่อนซึ่งก็คือ: ดาวน์โหลด pyserial จาก pypi untar pyserial.tgz ซีดี pyserial python3 setup.py install pip3 install pyserialแต่ผมอยากจะทำเช่นเดียวกับเย็นเด็กทำและเพียงแค่ทำสิ่งที่ชอบ แต่ยังไม่ชัดเจนว่าฉันไปถึงจุดนั้นได้อย่างไร และเพียงแค่จุดนั้น ยังไม่สนใจ (เว้นแต่ฉันจะต้องเป็น) ใน virtualenv เลย

18
การติดตั้ง Python 3 บน RHEL
ฉันพยายามติดตั้ง python3 บน RHEL โดยใช้ขั้นตอนต่อไปนี้: yum search python3 ซึ่งกลับมา No matches found for: python3 ติดตามโดย: yum search python ไม่มีผลการค้นหาใดที่มี python3 ฉันควรลองอะไรต่อไป
128 python  python-3.x  rhel 


9
วิธีรับไฟล์ล่าสุดในโฟลเดอร์โดยใช้ python
ฉันต้องการรับไฟล์ล่าสุดของโฟลเดอร์โดยใช้ python ขณะใช้รหัส: max(files, key = os.path.getctime) ฉันได้รับข้อผิดพลาดด้านล่าง: FileNotFoundError: [WinError 2] The system cannot find the file specified: 'a'

7
มีเพดานเทียบเท่ากับ // โอเปอเรเตอร์ใน Python หรือไม่?
ฉันพบข้อมูลเกี่ยวกับตัว//ดำเนินการใน Python ซึ่งใน Python 3 ทำการหารด้วยพื้น มีตัวดำเนินการที่หารด้วย ceil แทนหรือไม่? (ฉันรู้เกี่ยวกับตัว/ดำเนินการซึ่งใน Python 3 ทำการหารทศนิยม)
128 python  python-3.x 

8
__getattr__ บนโมดูล
จะใช้การเทียบเท่า__getattr__กับคลาสบนโมดูลได้อย่างไร? ตัวอย่าง เมื่อเรียกใช้ฟังก์ชันที่ไม่มีอยู่ในแอตทริบิวต์ที่กำหนดแบบคงที่ของโมดูลฉันต้องการสร้างอินสแตนซ์ของคลาสในโมดูลนั้นและเรียกใช้เมธอดบนฟังก์ชันด้วยชื่อเดียวกับที่ล้มเหลวในการค้นหาแอ็ตทริบิวต์บนโมดูล class A(object): def salutation(self, accusative): print "hello", accusative # note this function is intentionally on the module, and not the class above def __getattr__(mod, name): return getattr(A(), name) if __name__ == "__main__": # i hope here to have my __getattr__ function above invoked, since # salutation does …

2
พิมพ์คำแนะนำใน namedtuple
พิจารณาโค้ดต่อไปนี้: from collections import namedtuple point = namedtuple("Point", ("x:int", "y:int")) หลักปฏิบัติข้างต้นเป็นเพียงวิธีแสดงให้เห็นว่าฉันพยายามบรรลุเป้าหมายอะไร ฉันต้องการทำnamedtupleด้วยคำแนะนำประเภท คุณรู้วิธีที่สวยงามในการบรรลุผลตามที่ตั้งใจไว้หรือไม่?

6
ฉันจะแปลง. py เป็น. exe สำหรับ Python ได้อย่างไร
ฉันกำลังพยายามแปลงโปรแกรม Python ที่ค่อนข้างเรียบง่ายเป็นไฟล์ปฏิบัติการและไม่พบสิ่งที่ฉันกำลังมองหาดังนั้นฉันจึงมีคำถามสองสามข้อ (ฉันใช้ Python 3.6): วิธีการทำที่ฉันพบจนถึงตอนนี้มีดังนี้ ดาวน์โหลด Python เวอร์ชันเก่าและใช้ไฟล์ pyinstaller/py2exe การตั้งค่าสภาพแวดล้อมเสมือนใน Python 3.6 ที่จะช่วยให้ฉันทำ 1. ดาวน์โหลดตัวแปลง Python เป็น C ++ และใช้สิ่งนั้น นี่คือสิ่งที่ฉันได้ลอง / สิ่งที่พบปัญหา ฉันติดตั้งpyinstallerก่อนการดาวน์โหลดที่จำเป็นก่อนหน้านั้น (pypi-something) จึงไม่ทำงาน หลังจากดาวน์โหลดไฟล์ข้อกำหนดเบื้องต้นแล้วpyinstallerยังไม่รู้จักไฟล์นั้น ถ้าฉันตั้งค่า Virtualenv ใน Python 2.7 ฉันจำเป็นต้องติดตั้ง Python 2.7 หรือไม่ ในทำนองเดียวกันตัวแปลง python เป็น C ++ ตัวเดียวที่ฉันเห็นว่าใช้งานได้จนถึง Python 3.5 เท่านั้น - ฉันจำเป็นต้องดาวน์โหลดและใช้เวอร์ชันนี้หรือไม่หากพยายามทำเช่นนี้

12
ความหมายของ "Failed building wheel for X" ใน pip install คืออะไร?
นี่เป็นคำถามยอดนิยมอย่างแท้จริงที่ SO แต่ไม่มีคำตอบมากมายที่ฉันได้ดูอธิบายอย่างชัดเจนว่าข้อผิดพลาดนี้หมายถึงอะไรและเหตุใดจึงเกิดขึ้น สาเหตุหนึ่งของความสับสนคือเมื่อคุณทำ (เช่น) คุณจะpip install pycparserได้รับข้อผิดพลาดก่อน: Failed building wheel for pycparser ซึ่งตามด้วยข้อความว่าแพ็คเกจคือ: Successfully installed pycparser-2.19. # pip3 install pycparser Collecting pycparser Using cached https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar.gz Building wheels for collected packages: pycparser Running setup.py bdist_wheel for pycparser ... error Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-g_v28hpp/pycparser/setup.py';f=getattr(tokenize, 'open', …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.